Subscription method, device and storage medium of diagnostic data and electronic device

By introducing a diagnostic configuration table and hierarchical management method into the electronic control unit, the diagnostic data of each module can be monitored and filtered in real time, and a standardized diagnostic architecture can be established. This solves the problem of low diagnostic efficiency in the electronic control unit and achieves efficient diagnostic information management and interaction.

CN116931545BActive Publication Date: 2026-02-27FOSS (HANGZHOU) INTELLIGENT TECH CO LTD
View PDF 2 Cites 0 Cited by

Patent Information

Application Number
CN202310897644.4
Authority / Receiving Office
CN · China
Patent Type
Patents(China)
Current Assignee / Owner
Filing Date
2023-07-20
Publication Date
2026-02-27
Estimated Expiration
2043-07-20

AI Technical Summary

Technical Problem

The diagnostic efficiency of existing electronic control units is low, and the lack of a unified diagnostic management standardization architecture results in complex and inefficient diagnostic information.

Method used

The diagnostic configuration table is used to send configuration information to the kernel diagnostic management center and the application diagnostic management center, obtain diagnostic data of each module in real time, and process and encapsulate it based on priority identifiers to realize real-time monitoring, filtering and forwarding of diagnostic data of modules at different levels, and establish a standardized diagnostic architecture.

Benefits of technology

It improves the diagnostic efficiency of electronic control units, simplifies the interaction logic between modules, ensures the accuracy and timely processing of diagnostic information, and avoids the inefficiency caused by the large amount of diagnostic data and complex interactions.

✦ Generated by Eureka AI based on patent content.

Smart Images

  • Figure CN116931545B_ABST
    Figure CN116931545B_ABST
Patent Text Reader

Abstract

The application discloses a kind of diagnostic data subscription method, device and storage medium and electronic device, which comprises: based on diagnostic configuration table, first diagnostic configuration information is issued to kernel diagnosis management center, and second diagnostic configuration information is issued to application diagnosis management center;First unit diagnostic data reported by kernel diagnosis management center based on first diagnostic configuration information is obtained, and second unit diagnostic data reported by application diagnosis management center based on second diagnostic configuration information is obtained;In the case where the target unit diagnostic data of electronic control unit is obtained based on first unit diagnostic data and second unit diagnostic data, according to diagnostic configuration table, target unit diagnostic data is forwarded to at least one other electronic control unit.The application solves the technical problem that the acquisition efficiency of diagnostic data in the prior art is low.
Need to check novelty before this filing date? Find Prior Art

Description

TECHNICAL FIELD

[0001] The present application relates to the field of intelligent driving, in particular, to a method and apparatus for subscribing to diagnosis data, a storage medium and an electronic device. BACKGROUND

[0002] With the development of autonomous driving, more and more electronic control units (ECU) are applied to the field of automobiles to run intelligent algorithms and other functions to realize assisted driving or autonomous driving of vehicles. The functions of the electronic control unit will affect the final control effect and driving safety of the vehicle. Therefore, in order to ensure the normal operation of the electronic control unit, the running state of each module needs to be monitored in real time, the running state of each module needs to be diagnosed, and the diagnosis information needs to be notified to the relevant module in real time so as to make corresponding processing in time and avoid the occurrence of safety accidents.

[0003] However, there are many hardware modules and software modules in the electronic control unit, and the electronic control unit needs to configure and collect the diagnosis of each module and provide the relevant diagnosis information to the relevant module for processing. At the same time, there is also an interaction of diagnosis information between the electronic control units. In the face of so many diagnosis information and complex interaction logic, there is a lack of a general standardized diagnosis architecture / system that can uniformly diagnose and manage all electronic control units, which leads to low diagnosis efficiency of the electronic control unit.

[0004] Therefore, there is a technical problem of low diagnosis efficiency of the electronic control unit in the prior art. SUMMARY

[0005] The embodiments of the present application provide a method and apparatus for subscribing to diagnosis data, a storage medium and an electronic device to at least solve the technical problem of low accuracy of diagnosis data in the prior art.

[0006] According to an aspect of the embodiments of the present application, a method for subscribing to diagnostic data is provided. The method comprises: issuing first diagnostic configuration information to a kernel diagnostic management center and issuing second diagnostic configuration information to an application diagnostic management center based on a diagnostic configuration table, wherein the diagnostic configuration table is used to instruct at least one other electronic control unit to diagnose a target electronic control unit, the kernel diagnostic management center is configured to acquire diagnostic data reported by each kernel module of the target electronic control unit in real time, and the application diagnostic management center is configured to acquire diagnostic data reported by each application module of the target electronic control unit in real time; acquiring first unit diagnostic data reported by the kernel diagnostic management center based on the first diagnostic configuration information, and acquiring second unit diagnostic data reported by the application diagnostic management center based on the second diagnostic configuration information, wherein the diagnostic data reported by each kernel module comprises the first unit diagnostic data, and the diagnostic data reported by each application module comprises the second unit diagnostic data; and in a case where target unit diagnostic data of the electronic control unit is obtained based on the first unit diagnostic data and the second unit diagnostic data, forwarding the target unit diagnostic data to the at least one other electronic control unit according to the diagnostic configuration table.

[0007] According to another aspect of the embodiments of the present application, a device for subscribing to diagnostic data is provided. The device comprises: an issuing unit configured to issue first diagnostic configuration information to a kernel diagnostic management center and issue second diagnostic configuration information to an application diagnostic management center based on a diagnostic configuration table, wherein the diagnostic configuration table is used to instruct at least one other electronic control unit to diagnose a target electronic control unit, the kernel diagnostic management center is configured to acquire diagnostic data reported by each kernel module of the target electronic control unit in real time, and the application diagnostic management center is configured to acquire diagnostic data reported by each application module of the target electronic control unit in real time; an acquiring unit configured to acquire first unit diagnostic data reported by the kernel diagnostic management center based on the first diagnostic configuration information, and acquire second unit diagnostic data reported by the application diagnostic management center based on the second diagnostic configuration information, wherein the diagnostic data reported by each kernel module comprises the first unit diagnostic data, and the diagnostic data reported by each application module comprises the second unit diagnostic data; and a forwarding unit configured to, in a case where target unit diagnostic data of the electronic control unit is obtained based on the first unit diagnostic data and the second unit diagnostic data, forward the target unit diagnostic data to the at least one other electronic control unit according to the diagnostic configuration table.

[0008] As an optional solution, the acquisition unit comprises: a first acquisition module, configured to acquire first diagnosis data of a target priority, which is obtained by performing priority identification processing on third diagnosis data of a target application module determined by the application diagnosis management center based on the diagnosis priority information and based on application diagnosis module information, from the diagnosis data reported by each application module, and determine the second unit diagnosis data as the first diagnosis data, wherein the first diagnosis configuration information comprises the diagnosis priority information and the application diagnosis module information, the diagnosis priority information is used to indicate the target priority, the target priority comprises high, medium and low priorities, and the application diagnosis module information is used to indicate the target application module; and the acquisition unit comprises: a second acquisition module, configured to acquire fourth diagnosis data of the target priority, which is obtained by performing priority identification processing on third diagnosis data of a target application module determined by the application diagnosis management center based on the diagnosis priority information and based on application diagnosis module information, from the diagnosis data reported by each application module, and determine the second unit diagnosis data as the first diagnosis data, wherein the second diagnosis configuration information comprises the diagnosis priority information and the application diagnosis module information, the diagnosis priority information is used to indicate the target priority, the target priority comprises high, medium and low priorities, and the application diagnosis module information is used to indicate the target application module.

[0009] As an optional solution, the apparatus is further configured to determine first diagnosis data of a target kernel module based on diagnosis data reported by each of the kernel modules according to the kernel diagnosis module information, including: a third obtaining module configured to obtain a first diagnosis event reported by a first kernel module, wherein the kernel modules include the first kernel module; a first encapsulating module configured to, in a case where the first kernel module matches the target kernel module indicated by the kernel diagnosis module information and an effective time of the first diagnosis event is greater than a first time threshold, encapsulate the first diagnosis event to obtain first diagnosis sub-data, wherein the first diagnosis data includes the first diagnosis sub-data, and kernel diagnosis time information included in the first diagnosis configuration information is used to indicate the first time threshold; and the apparatus is further configured to determine third diagnosis data of a target application module based on diagnosis data reported by each of the application modules according to the application diagnosis module information, including: a fourth obtaining module configured to obtain a second diagnosis event reported by a first application module, wherein the application modules include the first application module; and a second encapsulating module configured to, in a case where the first application module matches the target application module indicated by the application diagnosis module information and an effective time of the second diagnosis event is greater than a second time threshold, encapsulate the second diagnosis event to obtain third diagnosis sub-data, wherein the third diagnosis data includes the third diagnosis sub-data, and application diagnosis time information included in the second diagnosis configuration information is used to indicate the second time threshold.

[0010] As an optional solution, the apparatus further includes: a fifth obtaining module configured to, before the first diagnosis event is encapsulated to obtain the first diagnosis sub-data, obtain a first enabling identifier indicated by the kernel diagnosis configuration information; and a first determining module configured to, before the first diagnosis event is encapsulated to obtain the first diagnosis sub-data, determine that the first kernel module matches the target kernel module indicated by the kernel diagnosis configuration information in a case where the first enabling identifier is a target identifier and a module identifier of the first kernel module is consistent with an identifier of the target kernel module; the apparatus further includes: a sixth obtaining module configured to, before the second diagnosis event is encapsulated to obtain the third diagnosis sub-data, obtain a second enabling identifier indicated by the application diagnosis module information; and a second determining module configured to, before the second diagnosis event is encapsulated to obtain the third diagnosis sub-data, determine that the first application module matches the target application module indicated by the application diagnosis configuration information in a case where the second enabling identifier is the target identifier and a module identifier of the first application module is consistent with an identifier of the target application module.

[0011] As an optional solution, the apparatus further comprises: a first storage module, configured to store, before the target unit diagnosis data is forwarded to the at least one other electronic control unit according to the diagnosis configuration table, high-priority diagnosis data of the first unit diagnosis data and high-priority diagnosis data of the second unit diagnosis data in a first position of a target diagnosis queue through a first transmission channel; a second storage module, configured to store, before the target unit diagnosis data is forwarded to the at least one other electronic control unit according to the diagnosis configuration table, medium-priority diagnosis data of the first unit diagnosis data and medium-priority diagnosis data of the second unit diagnosis data in a second position of the target diagnosis queue through a second transmission channel, wherein the second position is next to and after the first position; a third storage module, configured to store, before the target unit diagnosis data is forwarded to the at least one other electronic control unit according to the diagnosis configuration table, low-priority diagnosis data of the first unit diagnosis data and high-priority diagnosis data of the second unit diagnosis data in a third position of the target diagnosis queue through a third transmission channel, wherein the third position is next to and after the second position; and a third determination module, configured to determine, before the target unit diagnosis data is forwarded to the at least one other electronic control unit according to the diagnosis configuration table, diagnosis data stored in the target diagnosis queue within a target time period as the target unit diagnosis data.

[0012] As an optional solution, the apparatus further comprises: a reading module, configured to read, before the first diagnosis configuration information is issued to the kernel diagnosis management center and the second diagnosis configuration information is issued to the application diagnosis management center based on the diagnosis configuration table, subscription information from the diagnosis configuration table, wherein the subscription information is used to indicate a subscription request of the at least one other electronic control unit to diagnosis data of the target electronic control unit; and a generating module, configured to generate, before the first diagnosis configuration information is issued to the kernel diagnosis management center and the second diagnosis configuration information is issued to the application diagnosis management center based on the diagnosis configuration table, a first diagnosis configuration table for issuing to the kernel diagnosis management center and a second diagnosis configuration table for issuing to the application diagnosis management center according to the subscription information, wherein the first diagnosis configuration table is used to indicate the first diagnosis configuration information, and the second diagnosis configuration table is used to indicate the second diagnosis configuration information.

[0013] As an optional solution, the device further comprises a function degradation module configured to, after forwarding the target unit diagnosis data to the at least one other electronic control unit according to the diagnosis configuration table, determine a function degradation strategy according to an abnormal type of the abnormal diagnosis data if the abnormal diagnosis data is detected in the target unit diagnosis data, and perform a function degradation operation on the target electronic control unit according to the function degradation strategy.

[0014] According to yet another aspect of the embodiments of the present application, a computer program product or computer program is provided, which includes computer instructions stored in a computer readable storage medium. A processor of a computer device reads the computer instructions from the computer readable storage medium, and the processor executes the computer instructions to enable the computer device to perform the above diagnosis data subscription method.

[0015] According to yet another aspect of the embodiments of the present application, an electronic device is also provided, which includes a memory, a processor, and a computer program stored in the memory and executable on the processor, wherein the processor executes the above diagnosis data subscription method through the computer program.

[0016] In the embodiments of the present application, the first diagnosis configuration information is issued to a kernel diagnosis management center and the second diagnosis configuration information is issued to an application diagnosis management center based on a diagnosis configuration table, wherein the diagnosis configuration table is used to instruct at least one other electronic control unit to perform diagnosis on a target electronic control unit, the kernel diagnosis management center acquires diagnosis data reported by each kernel module of the target electronic control unit in real time, and the application diagnosis management center acquires diagnosis data reported by each application module of the target electronic control unit in real time; the first unit diagnosis data reported by the kernel diagnosis management center based on the first diagnosis configuration information is acquired, and the second unit diagnosis data reported by the application diagnosis management center based on the second diagnosis configuration information is acquired, wherein the diagnosis data reported by each kernel module includes the first unit diagnosis data, and the diagnosis data reported by each application module includes the second unit diagnosis data; and the target unit diagnosis data of the electronic control unit is obtained based on the first unit diagnosis data and the second unit diagnosis data, and the target unit diagnosis data is forwarded to the at least one other electronic control unit according to the diagnosis configuration table.

[0017] The subscription method of the diagnostic data can manage diagnostic information of electronic control units of different levels, and through real-time monitoring, screening, reporting and forwarding of diagnostic data of modules of different levels, the standardized diagnostic architecture for uniformly managing diagnostic information of electronic control units and interaction of diagnostic information between different electronic control units is provided, the defect of low diagnostic efficiency of the module caused by large amount of diagnostic data and complex interaction logic between electronic control units is avoided, the technical effect of improving the diagnostic efficiency of the target electronic control unit is realized, and the technical problem of low diagnostic efficiency of the electronic control unit in the related art is solved. BRIEF DESCRIPTION OF DRAWINGS

[0018] The accompanying drawings, which are incorporated herein and form a part of the specification, illustrate the embodiments of the present application and, together with the description, serve to explain the principles of the present application.

[0019] In order to more clearly illustrate the technical solutions in the embodiments of the present application or the prior art, the accompanying drawings required to be used in the embodiments or prior art description will be briefly introduced. Obviously, those skilled in the art can obtain other drawings according to these drawings without any creative effort.

[0020] Figure 1 Fig. 1 is a hardware environment schematic diagram of a diagnostic data subscription method according to an embodiment of the present application;

[0021] Figure 2 Fig. 2 is a flowchart of an optional diagnostic data subscription method according to an embodiment of the present application;

[0022] Figure 3 Fig. 3 is a schematic diagram of an optional diagnostic data subscription method according to an embodiment of the present application;

[0023] Figure 4 Fig. 4 is a schematic diagram of another optional diagnostic data subscription method according to an embodiment of the present application;

[0024] Figure 5 Fig. 5 is a schematic diagram of another optional diagnostic data subscription method according to an embodiment of the present application;

[0025] Figure 6 Fig. 6 is a schematic diagram of another optional diagnostic data subscription method according to an embodiment of the present application;

[0026] Figure 7 Fig. 7 is a schematic diagram of another optional diagnostic data subscription method according to an embodiment of the present application;

[0027] Figure 8is a schematic diagram of another optional diagnostic data subscription method according to an embodiment of the present application;

[0028] Figure 9 is a schematic diagram of another optional diagnostic data subscription method according to an embodiment of the present application;

[0029] Figure 10 is a schematic diagram of another optional diagnostic data subscription method according to an embodiment of the present application;

[0030] Figure 11 is a schematic diagram of an optional information processing apparatus according to an embodiment of the present application;

[0031] Figure 12 is a schematic diagram of an optional electronic apparatus according to an embodiment of the present application. DETAILED DESCRIPTION

[0032] In order to enable persons skilled in the art to better understand the present application, the technical solutions in the embodiments of the present application will be described clearly and completely below with reference to the drawings in the embodiments of the present application. Obviously, the described embodiments are only a part of the embodiments of the present application, rather than all the embodiments of the present application. Based on the embodiments in the present application, all other embodiments obtained by persons skilled in the art without creative work should fall within the scope of protection of the present application.

[0033] It should be noted that the terms "first", "second", and the like in the description and claims of the present application and the above-described drawings are used to distinguish similar objects, and do not necessarily indicate a specific order or a chronological sequence. It should be understood that the data thus used can be interchanged under appropriate circumstances, so that the embodiments of the present application described herein can be implemented in an order other than that illustrated or described herein. In addition, the terms "include" and "have" and any variations thereof are intended to cover non-exclusive inclusion, for example, a process, method, system, product or device that includes a series of steps or units does not necessarily have to include only those steps or units clearly listed, but can include other steps or units that are not clearly listed or inherent to the process, method, product or device.

[0034] According to an aspect of the embodiments of the present application, a diagnostic data subscription method is provided. Optionally, as an optional implementation, the above-mentioned diagnostic data subscription method can be applied in, but is not limited to, an environment as shown in Figure 1 which can include, but is not limited to, a vehicle-mounted device 102 and a server 112. The vehicle-mounted device 102 can include, but is not limited to, a display 104, a processor 106 and a memory 108. The server 112 includes a database 114 and a processing engine 116.

[0035] The specific process can be as follows:

[0036] In step S102, the server 112 generates first diagnosis configuration information for the kernel diagnosis management center of the vehicle-mounted device 102 and second diagnosis configuration information for the application diagnosis management center of the vehicle-mounted device 102 based on the diagnosis configuration table;

[0037] In steps S104-S106, the server 112 sends the first diagnosis configuration information to the kernel diagnosis management center of the vehicle-mounted device 102 and the second diagnosis configuration information to the application diagnosis management center of the vehicle-mounted device 102 through the network 110;

[0038] In step S108, the kernel diagnosis management center of the vehicle-mounted device 102 acquires first unit diagnosis data of the kernel layer based on the first diagnosis configuration information, and the application diagnosis management center of the vehicle-mounted device 102 acquires second unit diagnosis data of the application layer based on the second diagnosis configuration information;

[0039] In step S110, target unit diagnosis data is determined based on the first unit diagnosis data and the second unit diagnosis data;

[0040] In steps S112-114, the target unit diagnosis data is returned to the server 112 through the network 110;

[0041] In step S114, the server 112 forwards the target unit diagnosis data to the corresponding subscriber according to the diagnosis configuration table.

[0042] It should be noted that, in addition to the examples shown Figure 1 The above steps can be completed independently by the vehicle-mounted device or the server, or jointly by the vehicle-mounted device and the server, such as the server 112 performing the above steps S110 and the like, thereby reducing the processing pressure of the vehicle-mounted device 102.

[0043] Optionally, as an optional implementation manner, as shown in Figure 2 The subscription method of the diagnosis data includes:

[0044] S202, based on the diagnosis configuration table, the first diagnosis configuration information is sent to the kernel diagnosis management center, and the second diagnosis configuration information is sent to the application diagnosis management center, wherein the diagnosis configuration table is used to instruct at least one other electronic control unit to diagnose a target electronic control unit, the kernel diagnosis management center acquires diagnosis data reported by each kernel module of the target electronic control unit in real time, and the application diagnosis management center acquires diagnosis data reported by each application module of the target electronic control unit in real time;

[0045] S204, acquire first unit diagnosis data reported by the kernel diagnosis management center based on the first diagnosis configuration information, and acquire second unit diagnosis data reported by the application diagnosis management center based on the second diagnosis configuration information, wherein the diagnosis data reported by each kernel module includes the first unit diagnosis data, and the diagnosis data reported by each application module includes the second unit diagnosis data;

[0046] S206, in a case where target unit diagnosis data of the electronic control unit is obtained based on the first unit diagnosis data and the second unit diagnosis data, forwarding the target unit diagnosis data to the at least one other electronic control unit according to the diagnosis configuration table.

[0047] Optionally, in the embodiment, the above-mentioned subscription method of diagnosis data can be applied in an automatic driving scene, but is not limited to this. In this scene, with the development of automatic driving, more and more electronic control units (ECU) are applied to the field of automobiles to run intelligent algorithms and other functions to realize assisted driving or automatic driving of vehicles. The functions of the electronic control unit will affect the final control effect and driving safety of the vehicle. Therefore, in order to ensure the normal operation of the electronic control unit, the running state of each module needs to be monitored in real time, the running state of each module needs to be diagnosed, and the diagnosis information needs to be notified to the related module in real time so as to make corresponding processing in time and avoid the occurrence of safety accidents. At the same time, the diagnosis information is also helpful for backtracking and analysis of problems.

[0048] It should be noted that there are many hardware modules and software modules in the electronic control unit, and the electronic control unit needs to configure and collect the diagnosis of each module and provide the related diagnosis information to the related module for processing. At the same time, there is also an interaction of diagnosis information between the electronic control units. In the face of so many diagnosis information and complex interaction logic, there is a lack of a general standardized diagnosis architecture / system that can uniformly diagnose and manage all electronic control units to improve the diagnosis efficiency of the electronic control unit.

[0049] It should be noted that the above-mentioned subscription method of diagnosis data can manage the diagnosis information of electronic control units of different levels. Through real-time monitoring, screening, reporting and forwarding of the diagnosis data of modules of different levels, the purpose of providing a standardized diagnosis architecture for uniformly managing the diagnosis information of electronic control units and the interaction of diagnosis information between different electronic control units is achieved. The defect that the diagnosis efficiency of the module is low due to the large amount of diagnosis data and the complex interaction logic between the electronic control units is avoided, so that the technical effect of improving the diagnosis efficiency of the target electronic control unit is realized.

[0050] Further, the above-mentioned method of obtaining diagnostic data is applied to an electronic control unit diagnostic system, as shown in the following. Figure 3 As shown in the following, the electronic control unit diagnostic system can include, but is not limited to, a diagnostic service center 302, an application diagnostic management center 304, and a kernel diagnostic management center 306. The diagnostic service center 302 can, but is not limited to, pre-store unit diagnostic subscription requirements of external APPs (such as APP-1 to APP-n shown in the following) or other electronic control units (such as ECU-1 to ECU-n shown in the following) through a diagnostic configuration table before system startup. The diagnostic configuration table can be, but is not limited to, updated and maintained in real time according to actual requirements during system startup, and can also be, but is not limited to, issued to the application diagnostic management center 304 and / or the kernel diagnostic management center 306 with corresponding diagnostic configuration information. Figure 3 Figure 3 The kernel diagnostic management center 304 determines first unit diagnostic data from the configuration data reported by each kernel submodule based on the first diagnostic configuration information received from the diagnostic service center 302, and reports the first unit diagnostic data to the diagnostic service center 302 in real time.

[0051] The application diagnostic management center 306 determines second unit diagnostic data from the configuration data reported by each application submodule based on the second diagnostic configuration information received from the diagnostic service center 302, and reports the second unit diagnostic data to the diagnostic service center 302 in real time.

[0052] The diagnostic service center 302 determines target unit diagnostic data of a target electronic control unit (such as ECU-i shown in the following) based on the first unit diagnostic data and the second unit diagnostic data obtained, and returns the target unit diagnostic data to the external APP or other electronic control unit.

[0053] Figure 3

[0054] It should be noted that the above-mentioned method of obtaining diagnostic data is applied to an electronic control unit diagnostic system, as shown in the following.

[0055] ​​​Optionally, in the embodiment, the electronic control unit (ECU for short) can be but is not limited to a microprocessor control system for controlling and managing the vehicle. The electronic control unit can be but is not limited to composed of one or more microprocessors and related hardware, can receive input signals of sensors, and perform calculation and control according to preset algorithms and logic.

[0056] For example, in the vehicle, the electronic control unit can be but is not limited to used for controlling key systems such as engine, transmission system, brake system, vehicle body stability control, etc. The electronic control unit can be but is not limited to adjust parameters such as engine fuel injection, ignition timing, transmission shift, brake force distribution, etc. according to the vehicle state and the driver's instruction, to improve the performance, safety and fuel economy of the vehicle.

[0057] Optionally, in the embodiment, the electronic control unit can be but is not limited to include a kernel layer and an application layer, wherein the kernel layer can be but is not limited to indicate the core part of the vehicle-mounted operating system, can be but is not limited to load management hardware resources and provide basic services, can be but is not limited to include a driver for controlling various hardware devices (such as display, sound effect, etc.), a file system for managing files on storage media (such as flash memory, hard disk, etc.) and providing read-write interface, a process management system for allocating resources for application programs, and can be but is not limited to include an Ethernet sub-module, an SPI sub-module, a file system sub-module, etc.; the application layer can be but is not limited to indicate a software program running on the kernel layer to realize a specific function, can be but is not limited to include vehicle-related functional modules such as navigation module, multimedia playback module, voice recognition module, etc., wherein the above functional modules usually interact with the kernel layer through API.

[0058] Optionally, in the embodiment, the diagnosis configuration table can be but is not limited to a configuration table maintained by a diagnosis service center of the target electronic control unit, can be but is not limited to used for indicating target diagnosis information of the target electronic control unit diagnosed by other electronic control units, wherein the target diagnosis information can be but is not limited to include ID identification of the other electronic control units requesting to subscribe to diagnosis, ID identification of the target electronic control unit to be diagnosed, diagnosis level, diagnosis module, diagnosis priority, etc.

[0059] Optionally, in the embodiment, the diagnosis configuration table can be but is not limited to a configuration table configured in advance before system startup (power-on), can be but is not limited to include information of at least one other electronic control unit and information of the target electronic control unit, wherein the at least one other electronic control unit interacts with the target electronic control unit in diagnosis information, and the at least one other electronic control unit can be but is not limited to request to subscribe to the diagnosis information of the target electronic control unit.

[0060] It should be noted that the diagnostic configuration table can also be, but is not limited to, a configuration table that is configured or updated in real time at the diagnostic service center during system startup.

[0061] Optionally, in this embodiment, the diagnostic configuration table may be used, but is not limited to, to indicate information such as the electronic control unit to be diagnosed, diagnostic level information, diagnostic module information, diagnostic identification information, effective time information, enable identification information, priority information, and diagnostic description information.

[0062] It should be noted that the above effective time information can be used, but is not limited to, to indicate that when a diagnostic event (such as a fault) is acquired, the diagnostic event is determined to be valid only if it persists for a certain period of time (i.e., effective time, such as several seconds). This helps to avoid false alarms and thus improves the accuracy of diagnostic data acquisition.

[0063] It should be noted that when a diagnostic event (taking a fault as an example) is obtained and the aforementioned enable flag is the target flag, the diagnostic event is determined to be a non-negligible fault event of concern to the "subscriber" or "user"; conversely, when a diagnostic event (taking a fault as an example) is obtained and the aforementioned enable flag is not the target flag, the diagnostic event is determined to be a negligible fault event of concern to the "subscriber" or "user". By setting the enable flag, when faced with the acquisition, screening, confirmation, and reporting of a large number of diagnostic events, the focus can be placed on core or important diagnostic events, further improving the efficiency of diagnostic event processing.

[0064] To further illustrate, such as Figure 4 As shown, the diagnostic configuration table 402 includes ECUID 404, which indicates the identification information of the electronic control unit currently being diagnosed; level ID 406, which indicates whether the current diagnosis belongs to the kernel layer or application layer; module ID 408, which indicates the specific module under the kernel layer or application layer; diagnostic ID 410, which indicates the identification information of the diagnostic configuration table; effective time 412, which indicates the effective time threshold of the diagnostic event obtained in the kernel layer or application layer; enable flag 414, which indicates whether the status of the diagnostic configuration table 402 is valid; priority 414, which indicates the priority of the diagnostic data obtained (based on the processing of valid diagnostic events), wherein the priority includes high, medium and low priorities, and the reporting and storage order of diagnostic data with different priorities is different; and diagnostic description 416, which indicates relevant explanatory information.

[0065] Optionally, in the embodiment, the target electronic control unit can include, but is not limited to, a diagnosis service center, a kernel diagnosis management center, and an application diagnosis management center. The diagnosis service center can be configured to configure and maintain a diagnosis configuration table, and according to diagnosis module information indicated by the diagnosis configuration table, issue diagnosis configuration information to corresponding diagnosis management centers, including issuing first diagnosis configuration information to the kernel diagnosis management center and issuing second diagnosis configuration information to the application diagnosis management center.

[0066] Optionally, in the embodiment, the kernel diagnosis management center can be configured to acquire diagnosis data reported by each kernel module of the target electronic control unit in real time, and determine first unit diagnosis data from the diagnosis data reported by each kernel module according to the first diagnosis configuration information issued by the diagnosis service center.

[0067] Optionally, in the embodiment, the application diagnosis management center can be configured to acquire diagnosis data reported by each application module of the target electronic control unit in real time, and determine second unit diagnosis data from the diagnosis data reported by each application module according to the second diagnosis configuration information issued by the diagnosis service center.

[0068] It should be noted that after the first unit diagnosis data is reported by the kernel diagnosis management center to the diagnosis service center and the second unit diagnosis data is reported by the application diagnosis management center to the diagnosis service center, the diagnosis service center can obtain target unit diagnosis data based on the first unit diagnosis data and the second unit diagnosis data, and forward the target unit diagnosis data to other electronic control units corresponding to the target unit diagnosis data according to the information of the other electronic control units indicated by the diagnosis configuration table, such as identification information. Through the embodiments provided in the present application, the first diagnosis configuration information is issued to the kernel diagnosis management center and the second diagnosis configuration information is issued to the application diagnosis management center based on the diagnosis configuration table, wherein the diagnosis configuration table is used to instruct at least one other electronic control unit to diagnose a target electronic control unit, the kernel diagnosis management center obtains diagnosis data reported by each kernel module of the target electronic control unit in real time, and the application diagnosis management center obtains diagnosis data reported by each application module of the target electronic control unit in real time; the first unit diagnosis data reported by the kernel diagnosis management center based on the first diagnosis configuration information is obtained, and the second unit diagnosis data reported by the application diagnosis management center based on the second diagnosis configuration information is obtained, wherein the diagnosis data reported by each kernel module includes the first unit diagnosis data, and the diagnosis data reported by each application module includes the second unit diagnosis data; in the case that target unit diagnosis data of the electronic control unit is obtained based on the first unit diagnosis data and the second unit diagnosis data, the target unit diagnosis data is forwarded to at least one other electronic control unit according to the diagnosis configuration table. By using the above-mentioned subscription method of diagnosis data, the diagnosis information of each electronic control unit of different levels can be managed, and through real-time monitoring, screening, reporting and forwarding of the diagnosis data of each module of different levels, the purpose of providing a standardized diagnosis architecture for unified management of diagnosis information of electronic control units and interaction of diagnosis information between different electronic control units is achieved, and the defect of low diagnosis efficiency of the module caused by large amount of diagnosis data and complex interaction logic between electronic control units is avoided, thereby realizing the technical effect of improving the diagnosis efficiency of the target electronic control unit.

[0069] As an optional solution, obtaining the first unit diagnosis data reported by the kernel diagnosis management center based on the first diagnosis configuration information comprises:

[0070] S1, the kernel diagnosis management center based on the diagnosis priority information, the first diagnosis data of the target kernel module determined from the diagnosis data reported by each kernel module based on the kernel diagnosis module information is subjected to priority identification processing to obtain second diagnosis data of the target priority, and the second diagnosis data is determined as the first unit diagnosis data, wherein the first diagnosis configuration information includes diagnosis priority information and kernel diagnosis module information, the diagnosis priority information is used to indicate the target priority, the target priority includes high, medium and low priority, and the kernel diagnosis module information is used to indicate the target kernel module.

[0071] The second unit diagnosis data reported by the application diagnosis management center based on the second diagnosis configuration information is obtained, including:

[0072] S2, the application diagnosis management center based on the diagnosis priority information, the third diagnosis data of the target application module determined from the diagnosis data reported by each application module based on the application diagnosis module information is subjected to priority identification processing to obtain fourth diagnosis data of the target priority, and the fourth diagnosis data is determined as the second unit diagnosis data, wherein the second diagnosis configuration information includes diagnosis priority information and application diagnosis module information, the diagnosis priority information is used to indicate the target priority, the target priority includes high, medium and low priority, and the application diagnosis module information is used to indicate the target application module.

[0073] Optionally, in this embodiment, after the kernel diagnosis management center receives the first diagnosis configuration information issued by the diagnosis service center, the kernel diagnosis management center can but not limited to determine the first diagnosis data of the target kernel module from the diagnosis data reported by each kernel module based on the kernel diagnosis module information included in the first diagnosis configuration information, and then perform priority identification processing on the first diagnosis data based on the diagnosis priority information included in the first diagnosis configuration information to obtain second diagnosis data belonging to the target priority and determine it as the first unit diagnosis data.

[0074] It should be noted that the kernel diagnosis management center determines the first diagnosis data of the target kernel module from the diagnosis data reported by each kernel module based on the kernel diagnosis module information can but not limited to include: obtaining the diagnosis events (such as faults) reported by each kernel module, and in the case that the kernel module associated with the above diagnosis event matches the target kernel module indicated by the kernel diagnosis module information, and the effective time (i.e. duration) of the above diagnosis event is greater than the first time threshold indicated by the kernel diagnosis time information included in the first diagnosis configuration information, the diagnosis event meeting the condition is encapsulated to obtain the first diagnosis data.

[0075] Optionally, in the embodiment, after the application diagnosis management center receives the second diagnosis configuration information issued by the diagnosis service center, the application diagnosis management center can but is not limited to first determine the third diagnosis data of the target application module from the diagnosis data reported by each application module based on the application diagnosis module information included in the second diagnosis configuration information, and then perform priority identification processing on the third diagnosis data based on the diagnosis priority information included in the second diagnosis information to obtain the fourth diagnosis data belonging to the target priority, and determine it as the second unit diagnosis data.

[0076] It should be noted that the application diagnosis management center determines the third diagnosis data of the target application module from the diagnosis data reported by each application module based on the kernel diagnosis module information can but is not limited to include: obtaining the diagnosis events (such as faults) reported by each application module, and in the case that the application module associated with the above diagnosis event matches the target application module indicated by the application diagnosis module information, and the effective time (i.e. duration) of the above diagnosis event is greater than the second time threshold indicated by the application diagnosis time information included in the second diagnosis configuration information, the diagnosis events that meet the conditions are encapsulated to obtain the third diagnosis data.

[0077] It should be noted that diagnosis data of different priorities has different reporting and storage sequences, wherein diagnosis data of high priority is reported and stored in priority to diagnosis data of medium priority, diagnosis data of medium priority is reported and stored in priority to diagnosis data of low priority, and diagnosis data of the same priority is reported and stored based on diagnosis start time.

[0078] Further, as shown in Figure 5 In the case of system power-on start, the diagnosis service center 502 issues diagnosis configuration information corresponding to the level to the diagnosis management center 504, wherein the diagnosis management center 504 can but is not limited to be one of: kernel diagnosis management center, application diagnosis management center; the diagnosis configuration management module 506 included in the diagnosis management center 504 receives the diagnosis configuration information issued by the diagnosis service center 502 based on the diagnosis configuration table, and generates a diagnosis configuration sub-table of the diagnosis management center 504, which is used for subsequent judgment and filtering of the received diagnosis events;

[0079] Further, the diagnosis receiving module 508 of the diagnosis management center 504 receives the diagnosis data reported by each module, and performs filtering and judgment processing according to the diagnosis configuration sub-table, and encapsulates the processed diagnosis data into a diagnosis event block and adds it to the corresponding priority queue, wherein in the process of encapsulating into a diagnosis event block, the corresponding priority is marked based on the priority information of the diagnosis configuration sub-table, and then added to the corresponding priority queue;

[0080] Further, the diagnosis sending module 510 of the diagnosis management center 504 traverses each priority queue and reports the diagnosis event block to the diagnosis service center 502 according to the priority level;

[0081] It should be noted that the diagnosis sending module 510 preferentially reports the diagnosis event block in the high priority queue, traverses the medium priority queue in the case that there is no diagnosis event block in the high priority queue, and after traversing the medium priority queue, it is judged whether there is a new diagnosis event block in the high priority queue, if yes, it returns to the high priority queue, and if not, it further traverses the low priority queue.

[0082] Further, based on the above Figure 5 The diagnosis configuration module 506 is shown, and a diagnosis configuration module processing manner is as shown in Figure 6 The diagnosis configuration module processing manner is as shown in

[0083] Step S602, it is detected whether there is diagnosis configuration information issued by the diagnosis service center;

[0084] Step S604, in the case that the diagnosis configuration information is detected, a callback function is requested to be triggered, and initialization or updating of the local diagnosis configuration sub-table is performed;

[0085] It should be noted that in the case that the diagnosis configuration information is not detected, it returns to step S602 and continues to be detected;

[0086] Step S606, after the initialization or updating of the diagnosis configuration sub-table is completed, the diagnosis configuration sub-table after the initialization or updating is issued to the diagnosis receiving module, which is used for judging and filtering the received diagnosis event in the subsequent, and it returns to step S602 and continues to be detected.

[0087] Further, based on the above Figure 5 The diagnosis receiving module 508 is shown, and a diagnosis receiving module processing manner is as shown in Figure 7 The diagnosis receiving module processing manner is as shown in

[0088] Step S702, it is detected whether there is diagnosis information;

[0089] Step S704, in the case that the new diagnosis information is detected, it is judged according to the diagnosis configuration sub-table whether the diagnosis event is preliminarily matched (whether it exists) and enabled (whether the enabling identifier indicated by the diagnosis configuration sub-table is valid);

[0090] Step S706, in the case that the new diagnosis information is preliminarily matched and enabled with the diagnosis configuration sub-table, it is judged whether the effective time of the judgment information reaches the effective time threshold of the diagnosis configuration table;

[0091] Step S708, in a case where the new diagnosis information effective time reaches the effective time threshold, taking out the empty event block from the empty event chain table, filling the diagnosis information into the event block, and sending it to the corresponding priority queue according to the priority in the diagnosis configuration sub-table, triggering the working queue in the diagnosis sending module to send the diagnosis;

[0092] It should be noted that, in a case where there is no new diagnosis information, or the new diagnosis information does not preliminarily match the diagnosis configuration table and is enabled, or the effective time of the new diagnosis information does not reach the effective time threshold of the diagnosis configuration table, returning to step S702, and continuing to detect.

[0093] Further, based on the above Figure 5 As shown in the diagnosis sending module 510, a diagnosis receiving module processing manner is as shown in Figure 8 Specifically, the diagnosis receiving module processing manner includes the following steps.

[0094] Step S802, inputting the high priority queue;

[0095] Step S804, traversing the queue information of the high priority queue to obtain a diagnosis event;

[0096] Step S806, sending the diagnosis time and releasing the event block to the empty chain table;

[0097] Step S808, judging whether the current is the high priority queue;

[0098] Step S810, in a case where the current is the high priority queue, judging whether there is other diagnosis event to be sent;

[0099] It should be noted that, in a case where there is other diagnosis event to be sent, returning to step S804 to perform the traversal operation;

[0100] Step S812, in a case where the current is not the high priority queue or the high priority queue does not have other diagnosis event, judging whether the medium priority queue has diagnosis event to be sent;

[0101] Step S814, in a case where the medium priority has diagnosis event to be sent, inputting the medium priority queue and completing the sending of the diagnosis event of the medium priority queue;

[0102] Step S816, in a case where the medium priority queue does not have diagnosis event to be sent, judging whether the low priority queue has diagnosis event to be sent;

[0103] Step S818, in a case where the low priority has diagnosis event to be sent, inputting the low priority queue and completing the sending of the diagnosis event of the low priority queue;

[0104] It should be noted that in the case that there is no diagnostic event to be sent in the low priority, the sending of the diagnostic event in this round is ended.

[0105] It should be noted that the data transmission task of the high priority queue is processed preferentially, and the high priority queue can be but is not limited to the incoming queue processing interface. The queue processing interface traverses the incoming priority queue, takes out a diagnostic event block from the queue, and reports it to the diagnostic service center. After the reporting is successful, the event block is released to the empty event linked list for subsequent use by the receiving module. After processing the event, it is determined whether there is a diagnostic to be sent in the priority queue higher than the queue. If there is, the queue with higher priority is jumped to for processing of the diagnostic event.

[0106] Through the embodiments provided in the present application, the first diagnostic data of the target kernel module determined by the kernel diagnostic management center based on the diagnostic priority information and based on the diagnostic data reported from each kernel module based on the kernel diagnostic module information is subjected to priority identification processing to obtain second diagnostic data of the target priority, and the second diagnostic data is determined as the first unit diagnostic data. The first diagnostic configuration information includes diagnostic priority information and kernel diagnostic module information, the diagnostic priority information is used to indicate the target priority, the target priority includes high, medium and low priorities, and the kernel diagnostic module information is used to indicate the target kernel module. The third diagnostic data of the target application module determined by the application diagnostic management center based on the diagnostic priority information and based on the diagnostic data reported from each application module based on the application diagnostic module information is subjected to priority identification processing to obtain fourth diagnostic data of the target priority, and the fourth diagnostic data is determined as the second unit diagnostic data. The second diagnostic configuration information includes diagnostic priority information and application diagnostic module information, the diagnostic priority information is used to indicate the target priority, the target priority includes high, medium and low priorities, and the application diagnostic module information is used to indicate the target application module. By distinguishing the three-level priorities of the diagnostic data, the different diagnostic priorities are different, and then the diagnostic data can be reported in real time according to the high and low priorities, thereby achieving the purpose of improving the timeliness of the diagnostic detection, and achieving the technical effect of improving the accuracy of the electronic control unit diagnosis.

[0107] As an optional solution, the first diagnostic data of the target kernel module determined based on the diagnostic data reported from each kernel module based on the kernel diagnostic module information includes:

[0108] S1, obtaining a first diagnostic event reported by a first kernel module, wherein each kernel module includes the first kernel module;

[0109] S2, in the case that the first kernel module matches the target kernel module indicated by the kernel diagnosis module information and the validity time of the first diagnosis event is greater than the first time threshold, performing encapsulation processing on the first diagnosis event to obtain first diagnosis sub-data, wherein the first diagnosis data includes the first diagnosis sub-data, and the kernel diagnosis time information included in the first diagnosis configuration information is used to indicate the first time threshold;

[0110] determining the third diagnosis data of the target application module based on the diagnosis data reported by each application module according to the application diagnosis module information, including:

[0111] S3, obtaining a second diagnosis event reported by the first application module, wherein each application module includes the first application module;

[0112] S4, in the case that the first application module matches the target application module indicated by the application diagnosis module information and the validity time of the second diagnosis event is greater than the second time threshold, performing encapsulation processing on the second diagnosis event to obtain third diagnosis sub-data, wherein the third diagnosis data includes the third diagnosis sub-data, and the application diagnosis time information included in the second diagnosis configuration information is used to indicate the second time threshold.

[0113] Optionally, in the embodiment, the determination of the first diagnosis data of the target kernel module based on the diagnosis data reported by each kernel module according to the kernel diagnosis module information by the kernel diagnosis management center can but is not limited to include: obtaining diagnosis events reported by each kernel module, wherein each kernel module includes the first kernel module, in the case that the first kernel module matches the target kernel module indicated by the kernel diagnosis module information and the validity time (i.e. duration) of the first diagnosis event reported by the first kernel module is greater than the first time threshold indicated by the kernel diagnosis time information included in the first diagnosis configuration information, determining that the first diagnosis event is valid and performing encapsulation processing to obtain first diagnosis sub-data, wherein the first diagnosis data includes the first diagnosis sub-data.

[0114] Optionally, in the embodiment, the determination of the third diagnosis data of the target application module based on the diagnosis data reported by each application module according to the application diagnosis module information by the application diagnosis management center can but is not limited to include: obtaining diagnosis events reported by each application module, wherein each application module includes the first application module, in the case that the first application module matches the target application module indicated by the application diagnosis module information and the validity time (i.e. duration) of the second diagnosis event reported by the first application module is greater than the second time threshold indicated by the application diagnosis time information included in the second diagnosis configuration information, determining that the second diagnosis event is valid and performing encapsulation processing to obtain second diagnosis sub-data, wherein the second diagnosis data includes the second diagnosis sub-data.

[0115] According to the embodiments provided in the application, the first diagnostic event reported by the first kernel module is acquired, wherein each kernel module includes the first kernel module; in the case that the first kernel module matches the target kernel module indicated by the kernel diagnostic module information and the effective time of the first diagnostic event is greater than the first time threshold, the first diagnostic event is encapsulated to obtain the first diagnostic sub-data, wherein the first diagnostic data includes the first diagnostic sub-data, and the kernel diagnostic time information included in the first diagnostic configuration information is used to indicate the first time threshold; the second diagnostic event reported by the first application module is acquired, wherein each application module includes the first application module; in the case that the first application module matches the target application module indicated by the application diagnostic module information and the effective time of the second diagnostic event is greater than the second time threshold, the second diagnostic event is encapsulated to obtain the third diagnostic sub-data, wherein the third diagnostic data includes the third diagnostic sub-data, and the application diagnostic time information included in the second diagnostic configuration information is used to indicate the second time threshold. Through the condition screening in multiple dimensions, the diagnostic data meeting the specific module, the effective time and the corresponding priority is determined from the kernel layer / application layer, and then the technical effect of improving the accuracy of the electronic control unit diagnosis is achieved.

[0116] As an optional solution, before the first diagnostic event is encapsulated to obtain the first configuration sub-data, the method further includes:

[0117] S1, acquiring the first enabling identifier indicated by the kernel diagnostic configuration information;

[0118] S2, in the case that the first enabling identifier is the target identifier and the module identifier of the first kernel module is consistent with the identifier of the target kernel module, determining that the first kernel module matches the target kernel module indicated by the kernel diagnostic configuration information;

[0119] Before the second diagnostic event is encapsulated to obtain the third configuration sub-data, the method further includes:

[0120] S3, acquiring the second enabling identifier indicated by the application diagnostic module information;

[0121] S4, in the case that the second enabling identifier is the target identifier and the module identifier of the first application module is consistent with the identifier of the target application module, determining that the first application module matches the target application module indicated by the application diagnostic configuration information.

[0122] Optionally, in the embodiment, the diagnostic event whose enabling identifier is not the target identifier will not be reported. In the case that the diagnostic event (for example, a fault) is acquired and the above-mentioned enabling identifier is the target identifier, it is determined that the diagnostic event is a non-ignorable fault event which is concerned by the "subscriber" or "user"; and in the case that the diagnostic event (for example, a fault) is acquired and the above-mentioned enabling identifier is not the target identifier, it is determined that the diagnostic event is an ignorable fault event which is not concerned by the "subscriber" or "user". Through the setting of the enabling identifier, in the case of acquisition, screening, confirmation and reporting of a large number of diagnostic events, the core or important diagnostic events can be focused on, and the processing efficiency of the diagnostic events is further improved.

[0123] Through the embodiments provided in the application, the second enabling identifier indicated by the application diagnostic module information is acquired; in the case that the first enabling identifier is the target identifier and the module identifier of the first kernel module is consistent with the identifier of the target kernel module, it is determined that the first kernel module matches the target kernel module indicated by the kernel diagnostic configuration information; the second enabling identifier indicated by the application diagnostic module information is acquired; in the case that the second enabling identifier is the target identifier and the module identifier of the first application module is consistent with the identifier of the target application module, it is determined that the first application module matches the target application module indicated by the application diagnostic configuration information. Through the setting of the enabling identifier, in the case of acquisition, screening, confirmation and reporting of a large number of diagnostic events, the core or important diagnostic events can be focused on, and the processing efficiency of the diagnostic events is further improved. As an optional solution, before the target unit diagnostic data is forwarded to at least one other electronic control unit according to the diagnostic configuration table, the following steps are further included:

[0124] S1, storing the high-priority diagnostic data of the first unit diagnostic data and the high-priority diagnostic data of the second unit diagnostic data in the first position of the target diagnostic queue through the first transmission channel;

[0125] S2, storing the medium-priority diagnostic data of the first unit diagnostic data and the medium-priority diagnostic data of the second unit diagnostic data in the second position of the target diagnostic queue through the second transmission channel, wherein the second position is adjacent to and after the first position;

[0126] S3, storing the low-priority diagnostic data of the first unit diagnostic data and the high-priority diagnostic data of the second unit diagnostic data in the third position of the target diagnostic queue through the third transmission channel, wherein the third position is adjacent to and after the second position;

[0127] S4, determining the diagnostic data stored in the target diagnostic queue in the target time period as the target unit diagnostic data.

[0128] Optionally, in the embodiment, the diagnostic data of different priorities have different storage orders, wherein the diagnostic data of high priority is stored in priority to the diagnostic data of medium priority, the diagnostic data of medium priority is stored in priority to the diagnostic data of low priority, and the diagnostic data of the same priority is stored in sequence based on the diagnostic start time.

[0129] Optionally, in the embodiment, the diagnostic data of high priority is stored at the head position of the target diagnostic queue, the diagnostic data of medium priority is stored at the position of the target diagnostic queue after the diagnostic data of high priority, and the diagnostic data of low priority is stored at the position of the target queue after the diagnostic data of medium priority.

[0130] Optionally, in the embodiment, the first transmission channel can be but is not limited to a queue channel for transmitting only the diagnostic data of high priority, the second transmission channel can be but is not limited to a queue channel for transmitting only the diagnostic data of medium priority, and the third transmission channel can be but is not limited to a queue channel for transmitting only the diagnostic data of low priority.

[0131] By the embodiment provided in the application, the diagnostic data of high priority of the first unit diagnostic data and the diagnostic data of high priority of the second unit diagnostic data are stored at the first position of the target diagnostic queue through the first transmission channel; the diagnostic data of medium priority of the first unit diagnostic data and the diagnostic data of medium priority of the second unit diagnostic data are stored at the second position of the target diagnostic queue through the second transmission channel, wherein the second position is immediately adjacent to and after the first position; the diagnostic data of low priority of the first unit diagnostic data and the diagnostic data of high priority of the second unit diagnostic data are stored at the third position of the target diagnostic queue through the third transmission channel, wherein the third position is immediately adjacent to and after the second position; and the diagnostic data stored in the target diagnostic queue within the target time period is determined as the target unit diagnostic data. In the process of obtaining diagnostic data of different levels (kernel layer and application layer), the diagnostic data of different priorities correspond to transmission channels of different priorities respectively, and are stored in different areas of the target diagnostic queue, wherein the storage area is also associated with the priority of the diagnostic data, thereby being able to perform priority processing (including priority transmission, storage) and priority response (the data at the front of the target storage queue is transmitted and responded in priority) on the core / key data in the diagnostic data of the kernel layer and the application layer, thereby improving the timeliness of the electronic control unit diagnosis, and achieving the technical effect of improving the efficiency of the electronic control unit diagnosis.

[0132] As an optional solution, before the first diagnostic configuration information is issued to the kernel diagnostic management center and the second diagnostic configuration information is issued to the application diagnostic management center based on the diagnostic configuration table, the method further comprises:

[0133] reading subscription information from the diagnosis configuration table, wherein the subscription information is used to indicate a subscription request of the at least one other electronic control unit to the diagnosis data of the target electronic control unit;

[0134] generating, according to the subscription information, a first diagnosis configuration table for issuing to the kernel diagnosis management center and a second diagnosis configuration table for issuing to the application diagnosis management center, wherein the first diagnosis configuration table is used to indicate first diagnosis configuration information, and the second diagnosis configuration table is used to indicate second diagnosis configuration information.

[0135] Optionally, in the embodiment, the subscription information can be, but is not limited to, information for indicating a subscription request of the at least one other electronic control unit to the diagnosis data of the target electronic control unit, which is pre-set before system startup or updated in system startup, and can include, but is not limited to, information of the other electronic control unit requesting subscription (including related information such as identification of the other electronic control unit for returning diagnosis data), information of the target electronic control unit being subscribed (including related information such as hierarchical information and effective time information of the specific module being subscribed).

[0136] Optionally, in the embodiment, the diagnosis service center generates diagnosis configuration sub-tables for issuing to the diagnosis management center according to the subscription information, including generating the first diagnosis configuration table for storing the first diagnosis configuration information and issuing to the kernel diagnosis management center, and generating the second diagnosis configuration table for storing the second diagnosis configuration information and issuing to the application diagnosis management center.

[0137] As an optional solution, after forwarding the target unit diagnosis data to the at least one other electronic control unit according to the diagnosis configuration table, the method further comprises:

[0138] S1, in the case where it is detected that there is abnormal diagnosis data in the target unit diagnosis data, determining a function degradation strategy according to an abnormal type of the abnormal diagnosis data, and performing a function degradation operation on the target electronic control unit according to the function degradation strategy.

[0139] Optionally, in the embodiment, the abnormal diagnosis data can be, but is not limited to, diagnosis data for indicating that the corresponding diagnosis event is a fault event.

[0140] Optionally, in the embodiment, the function degradation strategy can be, but is not limited to, a strategy for indicating to perform a function degradation operation on the target electronic control unit, for example, to perform precision or response speed reduction processing on the electronic control unit corresponding to the abnormal diagnosis data, so as to reduce the requirement for vehicle control.

[0141] Through the embodiments provided in the present application, in the case that it is detected that there is abnormal diagnosis data in the target unit diagnosis data, a function degradation strategy is determined according to the abnormal type of the abnormal diagnosis data, and a function degradation operation is performed on the target electronic control unit according to the function degradation strategy. By using the responsive function degradation strategy, the function degradation of the related electronic control unit in the diagnosis abnormal scene is performed, the requirement for vehicle control is reduced, and the technical effect of improving the safety control of the vehicle / module is achieved.

[0142] As an optional solution, a diagnosis service system based on the above-mentioned diagnosis data subscription method is shown in Figure 9 The diagnosis service center 902 can include, but is not limited to, a free technology zero-message-queue (FT-ZMQ), which can be used to indicate a message transmission mechanism (publish, subscribe).

[0143] The diagnosis service center 902 can be configured for each diagnosis management center, including maintaining a diagnosis configuration table 908 for configuring the kernel diagnosis management center 904 and the application diagnosis management center 906; can also be used to maintain the subscription of the tail ECU and other APPs to the diagnosis, and maintain the subscription information in a diagnosis subscription table 910; can also be used to process the diagnosis data in a diagnosis data queue 912, and distribute the diagnosis data to the related client (or external ECU, other APP) according to the diagnosis subscription table 910.

[0144] Further, an FT-ZMQ data processing flow based on the above-mentioned diagnosis service system is shown in Figure 10 Specifically, the flow includes:

[0145] In step S1002, the diagnosis configuration table is read to configure the application / kernel diagnosis management center;

[0146] In step S1004-1, it is detected whether a client subscription is received;

[0147] In step S1004-2, it is detected whether diagnosis data arrives;

[0148] It should be noted that step S1004-1 and step S1004-2 can be asynchronous steps.

[0149] In step S1006, in the case that the client subscription is received, the subscription information of the client is maintained in the diagnosis subscription table;

[0150] Step S1008, in the case of detecting diagnostic data arrival, traversing the diagnostic data queue, and distributing diagnostic data to each client according to the diagnostic subscription table;

[0151] It should be noted that in the case of not receiving the client subscription, return to step S1004-1, continue to detect, and in the case of not detecting diagnostic data arrival, return to step S1004-2, continue to detect.

[0152] It should be noted that after the FT-ZMQ device (diagnostic service center) is powered on, the diagnostic configuration is performed, the information in the configuration table is read, and the diagnostic configuration is performed on the application diagnostic management center and the kernel diagnostic management center respectively, and after the configuration is completed, the subscription listening and diagnostic data process are entered; the subscription process starts the subscription listening, when the subscription arrives, the subscription information is processed and added to the subscription table for maintenance; the diagnostic data processing is performed by traversing the diagnostic data queue, and the diagnostic data is distributed to each client according to the diagnostic subscription table, and the data interaction is completed.

[0153] As an optional solution, the above-mentioned diagnostic data subscription method is applied to a diagnostic management system suitable for vehicle-mounted ECU, wherein in the diagnostic management system, the adaptation of related framework and interface is completed for different hardware platforms or operating systems, such as data sending and data receiving interface implementation.

[0154] Optionally, before the diagnostic management system is started, the related diagnostic configuration file is configured, and the system is started, wherein the application diagnostic management center and the kernel diagnostic management center are started before the diagnostic service center. Further, after the application diagnostic management center and the kernel diagnostic management center are started successfully, the diagnostic service center is started, and the diagnostic service center is used to read the configuration file to generate the configuration table, and perform diagnostic configuration of each diagnostic management center according to the configuration table.

[0155] Optionally, in the diagnostic management system, the kernel diagnostic management center belongs to the kernel module, and is prior to the application diagnostic management center and the diagnostic service center. After the kernel module is powered on, the diagnostic management module, the diagnostic receiving module, and the diagnostic sending related linked list and queue are initialized. After receiving the diagnostic configuration of the service center, the local diagnostic configuration table is initialized or updated; the diagnostic receiving module is started, and the diagnostic information of each module in the kernel is received in real time, and is judged and filtered according to the diagnostic configuration table, when the diagnosis is valid diagnosis, the empty event block is taken out from the empty event linked list, the diagnostic information is filled into the event block, and is sent to the corresponding queue according to the priority in the diagnostic configuration table, and the queue processing task in the diagnostic sending module is triggered to send the diagnosis; after the diagnostic sending module is triggered, the task of the high-priority queue is preferentially processed, and the high-priority queue is transmitted into the queue processing interface. The queue processing interface transmits the priority queue according to the priority queue, to ensure the real-time of the diagnostic information. The queue is traversed, a diagnostic event block is taken out from the queue, and is reported to the diagnostic center, after the reporting is successful, the event block is released to the empty event linked list, so as to be used by the receiving module subsequently; after the event is processed, it is judged whether there is diagnosis to be sent in the priority queue higher than the queue, if there is, the queue with higher priority is jumped to process the diagnostic event.

[0156] Optionally, in the diagnostic management system, the diagnostic service center is started last, reads the information in the configuration table after being started, and performs diagnostic configuration on the application diagnostic management center and the kernel diagnostic management center respectively, enters the subscription listening and diagnostic data process after the configuration is completed; the listening of the subscription is started, when the subscription arrives (the subscription of the external ECU or the APP), the subscription information is processed and is added to the subscription table for maintenance; meanwhile, the queue processing task is triggered after the diagnostic management center reports the diagnosis, the diagnostic data is distributed to different clients by traversing the diagnostic data queue and according to the diagnostic subscription table, and the real-time reporting of the data is ensured, and the real-time of the data interaction is ensured.

[0157] Optionally, when the diagnostic management system exits, the diagnostic management center releases the resources preferentially, the diagnostic service center notifies the related subscribers, and disconnects the related links, releases the resources, and the system exits.

[0158] It can be understood that in the specific embodiments of the present application, the data related to user information is involved, when the above embodiments of the present application are applied to specific products or technologies, the user permission or consent needs to be obtained, and the collection, use and processing of the related data need to comply with the relevant laws, regulations and standards of the country and region.

[0159] It should be noted that, for the foregoing method embodiments, for the sake of simple description, they are all described as a combination of a series of actions, but those skilled in the art should know that the present application is not limited to the action sequence described, because according to the present application, certain steps can be performed in other sequences or simultaneously. Secondly, those skilled in the art should know that the embodiments described in the specification are all preferred embodiments, and the actions and modules involved are not necessarily necessary for the present application.

[0160] According to another aspect of the embodiments of the present application, a diagnostic data subscription device for implementing the diagnostic data subscription method described above is also provided. As shown in the figure, the device comprises: Figure 11

[0161] The issuing unit 1102 is configured to issue first diagnostic configuration information to the kernel diagnosis management center and issue second diagnostic configuration information to the application diagnosis management center based on a diagnostic configuration table, wherein the diagnostic configuration table is used to instruct at least one other electronic control unit to diagnose the target electronic control unit, the kernel diagnosis management center acquires the diagnostic data reported by each kernel module of the target electronic control unit in real time, and the application diagnosis management center acquires the diagnostic data reported by each application module of the target electronic control unit in real time;

[0162] The acquisition unit 1104 is configured to acquire first unit diagnostic data reported by the kernel diagnosis management center based on the first diagnostic configuration information and acquire second unit diagnostic data reported by the application diagnosis management center based on the second diagnostic configuration information, wherein the diagnostic data reported by each kernel module comprises the first unit diagnostic data, and the diagnostic data reported by each application module comprises the second unit diagnostic data;

[0163] The forwarding unit 1106 is configured to, in the case that the target unit diagnostic data of the electronic control unit is obtained based on the first unit diagnostic data and the second unit diagnostic data, forward the target unit diagnostic data to at least one other electronic control unit according to the diagnostic configuration table.

[0164] As an optional solution, the acquisition unit 1104 comprises:

[0165] The first acquisition module is configured to acquire first diagnostic data of a target kernel module determined based on kernel diagnosis module information from the diagnostic data reported by each kernel module and subjected to priority identification processing by the kernel diagnosis management center based on diagnostic priority information, to obtain second diagnostic data of a target priority, and to determine the second diagnostic data as the first unit diagnostic data, wherein the first diagnostic configuration information comprises the diagnostic priority information and the kernel diagnosis module information, the diagnostic priority information is used to indicate the target priority, the target priority comprises high, medium and low priorities, and the kernel diagnosis module information is used to indicate the target kernel module. ​

[0166] The obtaining unit 1104 includes:

[0167] The second obtaining module is configured to obtain third diagnosis data of a target application module determined by the application diagnosis management center based on diagnosis priority information and diagnosis data reported by each application module based on application diagnosis module information, perform priority identification processing on the third diagnosis data to obtain fourth diagnosis data of a target priority, and determine the fourth diagnosis data as the second unit diagnosis data.

[0168] As an optional solution, the apparatus is further configured to determine first diagnosis data of a target kernel module based on diagnosis data reported by each kernel module based on kernel diagnosis module information, and includes:

[0169] The third obtaining module is configured to obtain a first diagnosis event reported by the first kernel module, where each kernel module includes the first kernel module.

[0170] The first packaging module is configured to, in a case where the first kernel module matches the target kernel module indicated by the kernel diagnosis module information and an effective time of the first diagnosis event is greater than a first time threshold, perform packaging processing on the first diagnosis event to obtain first configuration sub-data, where the first diagnosis data includes the first configuration sub-data, and kernel diagnosis time information included in the first diagnosis configuration information is used to indicate the first time threshold.

[0171] The apparatus is further configured to determine third diagnosis data of a target application module based on diagnosis data reported by each application module based on application diagnosis module information, and includes:

[0172] The fourth obtaining module is configured to obtain a second diagnosis event reported by the first application module, where each application module includes the first application module.

[0173] The second packaging module is configured to, in a case where the first application module matches the target application module indicated by the application diagnosis module information and an effective time of the second diagnosis event is greater than a second time threshold, perform packaging processing on the second diagnosis event to obtain third configuration sub-data, where the third diagnosis data includes the third configuration sub-data, and application diagnosis time information included in the second diagnosis configuration information is used to indicate the second time threshold.

[0174] As an optional solution, the apparatus further includes:

[0175] The fifth obtaining module is configured to obtain the first enabling identifier indicated by the kernel diagnosis configuration information before the first diagnosis event is encapsulated to obtain the first configuration sub-data.

[0176] The first determining module is configured to determine that the first kernel module matches the target kernel module indicated by the kernel diagnosis configuration information in a case where the first enabling identifier is the target identifier and the module identifier of the first kernel module is consistent with the identifier of the target kernel module before the first diagnosis event is encapsulated to obtain the first configuration sub-data.

[0177] The apparatus further includes:

[0178] The sixth obtaining module is configured to obtain the second enabling identifier indicated by the application diagnosis module information before the second diagnosis event is encapsulated to obtain the third configuration sub-data.

[0179] The second determining module is configured to determine that the first application module matches the target application module indicated by the application diagnosis configuration information in a case where the second enabling identifier is the target identifier and the module identifier of the first application module is consistent with the identifier of the target application module before the second diagnosis event is encapsulated to obtain the third configuration sub-data.

[0180] As an optional solution, the apparatus further includes:

[0181] The first storage module is configured to store the high-priority diagnosis data of the first unit diagnosis data and the high-priority diagnosis data of the second unit diagnosis data in the first position of the target diagnosis queue through the first transmission channel before the target unit diagnosis data is forwarded to the at least one other electronic control unit according to the diagnosis configuration table.

[0182] The second storage module is configured to store the medium-priority diagnosis data of the first unit diagnosis data and the medium-priority diagnosis data of the second unit diagnosis data in the second position of the target diagnosis queue through the second transmission channel before the target unit diagnosis data is forwarded to the at least one other electronic control unit according to the diagnosis configuration table, where the second position is next to and after the first position.

[0183] The third storage module is configured to store the low-priority diagnosis data of the first unit diagnosis data and the high-priority diagnosis data of the second unit diagnosis data in the third position of the target diagnosis queue through the third transmission channel before the target unit diagnosis data is forwarded to the at least one other electronic control unit according to the diagnosis configuration table, where the third position is next to and after the second position.

[0184] The third determining module is configured to determine, as the target unit diagnosis data, diagnosis data stored in the target diagnosis queue within a target time period before the target unit diagnosis data is forwarded to the at least one other electronic control unit according to the diagnosis configuration table.

[0185] As an optional solution, the apparatus further includes:

[0186] The reading module is configured to read subscription information from the diagnosis configuration table before the first diagnosis configuration information is issued to the kernel diagnosis management center and the second diagnosis configuration information is issued to the application diagnosis management center based on the diagnosis configuration table, where the subscription information is used to indicate a subscription request of the at least one other electronic control unit to the diagnosis data of the target electronic control unit.

[0187] The generating module is configured to generate, according to the subscription information, a first diagnosis configuration table for issuing to the kernel diagnosis management center and a second diagnosis configuration table for issuing to the application diagnosis management center before the first diagnosis configuration information is issued to the kernel diagnosis management center and the second diagnosis configuration information is issued to the application diagnosis management center based on the diagnosis configuration table, where the first diagnosis configuration table is used to indicate the first diagnosis configuration information and the second diagnosis configuration table is used to indicate the second diagnosis configuration information.

[0188] As an optional solution, the apparatus further includes a function degradation module configured to, after the target unit diagnosis data is forwarded to the at least one other electronic control unit according to the diagnosis configuration table, determine a function degradation strategy according to an abnormal type of abnormal diagnosis data in the target unit diagnosis data when it is detected that the target unit diagnosis data includes the abnormal diagnosis data, and perform a function degradation operation on the target electronic control unit according to the function degradation strategy.

[0189] The specific embodiments can refer to the examples shown in the above diagnosis data subscription method, which will not be described herein again in this example.

[0190] According to still another aspect of the embodiments of the present application, an electronic apparatus for implementing the above diagnosis data subscription method is provided, as shown in the above Figure 12 The electronic apparatus includes a memory 1202 and a processor 1204, the memory 1202 stores a computer program, and the processor 1204 is configured to execute the steps in any of the above method embodiments by the computer program.

[0191] Optionally, in the present embodiment, the above electronic apparatus can be located in at least one network device of a plurality of network devices of a computer network.

[0192] Optionally, in the present embodiment, the above processor can be configured to execute the following steps by the computer program:

[0193] S1, issuing first diagnosis configuration information to a kernel diagnosis management center and issuing second diagnosis configuration information to an application diagnosis management center based on a diagnosis configuration table, wherein the diagnosis configuration table is used to instruct at least one other electronic control unit to diagnose a target electronic control unit, the kernel diagnosis management center acquires diagnosis data reported by each kernel module of the target electronic control unit in real time, and the application diagnosis management center acquires diagnosis data reported by each application module of the target electronic control unit in real time;

[0194] S2, acquiring first unit diagnosis data reported by the kernel diagnosis management center based on the first diagnosis configuration information, and acquiring second unit diagnosis data reported by the application diagnosis management center based on the second diagnosis configuration information, wherein the diagnosis data reported by each kernel module comprises the first unit diagnosis data, and the diagnosis data reported by each application module comprises the second unit diagnosis data;

[0195] S3, in a case where target unit diagnosis data of the electronic control unit is obtained based on the first unit diagnosis data and the second unit diagnosis data, forwarding the target unit diagnosis data to the at least one other electronic control unit according to the diagnosis configuration table.

[0196] Optionally, those skilled in the art can understand that, Figure 12 The structure shown is only schematic, and the electronic device can also be a smart phone (such as an Android phone, an iOS phone, etc.), a tablet computer, a palm computer, a Mobile Internet Device (MID), a PAD, or the like. Figure 12 It does not limit the structure of the electronic device. For example, the electronic device can further include more or fewer components (such as a network interface, etc.) than those shown in the figure, or have a different configuration from that shown in the figure. Figure 12 The structure shown is only schematic, and the electronic device can also be a smart phone (such as an Android phone, an iOS phone, etc.), a tablet computer, a palm computer, a Mobile Internet Device (MID), a PAD, or the like. Figure 12 It does not limit the structure of the electronic device. For example, the electronic device can further include more or fewer components (such as a network interface, etc.) than those shown in the figure, or have a different configuration from that shown in the figure.

[0197] The memory 1202 can be used to store software programs and modules, such as the program instructions / modules corresponding to the diagnostic data subscription method and apparatus in this embodiment. The processor 1204 executes various functional applications and data processing by running the software programs and modules stored in the memory 1202, thereby realizing the aforementioned diagnostic data subscription method. The memory 1202 may include high-speed random access memory and may also include non-volatile memory, such as one or more magnetic storage devices, flash memory, or other non-volatile solid-state memory. In some instances, the memory 1202 may further include memory remotely located relative to the processor 1204, and these remote memories can be connected to the terminal via a network. Examples of such networks include, but are not limited to, the Internet, corporate intranets, local area networks, mobile communication networks, and combinations thereof. Specifically, the memory 1202 may be used, but is not limited to, to store information such as first unit diagnostic data, second unit diagnostic data, and target unit diagnostic data. As an example, such as... Figure 12 As shown, the memory 1202 may include, but is not limited to, the first sending unit 1102, the acquisition unit 1104, and the forwarding unit 1106 of the diagnostic data subscription device. Furthermore, it may include, but is not limited to, other module units of the diagnostic data subscription device, which will not be described in detail in this example.

[0198] Optionally, the aforementioned transmission device 1206 is used to receive or send data via a network. Specific examples of the network described above may include wired networks and wireless networks. In one example, the transmission device 1206 includes a Network Interface Controller (NIC), which can be connected to other network devices and routers via a network cable to communicate with the Internet or a local area network. In one example, the transmission device 806 is a Radio Frequency (RF) module, used for wireless communication with the Internet.

[0199] In addition, the above-mentioned electronic device also includes: a display 1208 for displaying information such as first unit diagnostic data, second unit diagnostic data, and target unit diagnostic data; and a connection bus 1210 for connecting the various module components in the above-mentioned electronic device.

[0200] In other embodiments, the aforementioned terminal device or server can be a node in a distributed system, wherein the distributed system can be a blockchain system, which is a distributed system formed by connecting multiple nodes through network communication. The nodes can form a peer-to-peer (P2P) network, and any form of computing device, such as a server, terminal, or other electronic device, can become a node in the blockchain system by joining this peer-to-peer network.

[0201] According to an aspect of the present application, there is provided a computer program product including a computer program / instructions containing program code for executing the methods shown in the flowcharts. In such embodiments, the computer program can be downloaded and installed from a network through the communication section, and / or installed from a removable medium. When the computer program is executed by the central processing unit, various functions provided by the embodiments of the present application are performed.

[0202] The above-mentioned sequence numbers of the embodiments of the present application are only for description, and do not represent the advantages and disadvantages of the embodiments.

[0203] It should be noted that the computer system of the electronic device is only an example, and should not bring any limitation to the functions and use range of the embodiments of the present application.

[0204] The computer system includes a central processing unit (CPU) which can perform various appropriate actions and processes according to programs stored in a read-only memory (ROM) or programs loaded from a storage section into a random access memory (RAM). Various programs and data required for system operation are also stored in the random access memory. The central processing unit, the read-only memory, and the random access memory are connected to each other through a bus. An input / output interface (I / O interface) is also connected to the bus.

[0205] The following components are connected to the input / output interface: an input section including a keyboard, a mouse, etc.; an output section including a cathode ray tube (CRT), a liquid crystal display (LCD), etc., and a speaker, etc.; a storage section including a hard disk, etc.; and a communication section including a network interface card such as a local area network card, a modem, etc. The communication section performs communication processing via a network such as the Internet. A drive is also connected to the input / output interface as necessary. A removable medium such as a magnetic disk, an optical disk, a magneto-optical disk, a semiconductor memory, etc. is attached to the drive as necessary, so that a computer program read out from the removable medium is installed into the storage section as necessary.

[0206] In particular, according to embodiments of the present application, the processes described in the various method flowcharts can be implemented as a computer software program. For example, embodiments of the present application include a computer program product comprising a computer program carried on a computer readable medium, the computer program containing program code for executing the methods illustrated by the flowcharts. In such embodiments, the computer program can be downloaded and installed from a network by a communication section, and / or installed from a detachable medium. When the computer program is executed by a central processing unit, various functions defined in the system of the present application are executed.

[0207] According to an aspect of the present application, a computer readable storage medium is provided, from which a processor of a computer device reads computer instructions, and the processor executes the computer instructions, so that the computer device executes the method provided in the various optional implementation manners described above.

[0208] Optionally, in the present embodiment, the computer readable storage medium described above can be configured to store a computer program for executing the following steps:

[0209] S1, issuing first diagnosis configuration information to a kernel diagnosis management center and issuing second diagnosis configuration information to an application diagnosis management center based on a diagnosis configuration table, wherein the diagnosis configuration table is used to instruct at least one other electronic control unit to diagnose a target electronic control unit, the kernel diagnosis management center acquires diagnosis data reported by each kernel module of the target electronic control unit in real time, and the application diagnosis management center acquires diagnosis data reported by each application module of the target electronic control unit in real time;

[0210] S2, acquiring first unit diagnosis data reported by the kernel diagnosis management center based on the first diagnosis configuration information, and acquiring second unit diagnosis data reported by the application diagnosis management center based on the second diagnosis configuration information, wherein the diagnosis data reported by each kernel module comprises the first unit diagnosis data, and the diagnosis data reported by each application module comprises the second unit diagnosis data;

[0211] S3, in a case where target unit diagnosis data of the electronic control unit is obtained based on the first unit diagnosis data and the second unit diagnosis data, forwarding the target unit diagnosis data to the at least one other electronic control unit according to the diagnosis configuration table.

[0212] Optionally, in the embodiment, all or part of the steps in the various methods of the above-described embodiments can be understood by those of ordinary skill in the art that the above-described embodiments can be completed by programs instructing the terminal device related hardware, and the programs can be stored in a computer readable storage medium, and the storage medium can include a flash disk, a read-only memory (ROM), a random access memory (RAM), a magnetic disk or an optical disk, etc.

[0213] The serial numbers of the embodiments of the application are only for description, and do not represent the advantages or disadvantages of the embodiments.

[0214] The integrated units in the above-described embodiments, if realized in the form of software function units and sold or used as independent products, can be stored in the above-described computer readable storage medium. Based on such understanding, the technical solutions of the application essentially or the parts that make contributions to the prior art or the whole or part of the technical solutions can be embodied in the form of software products, and the computer software products are stored in the storage medium, including a plurality of instructions for causing one or more computer devices (which can be personal computers, servers or network devices, etc.) to execute all or part of the steps of the embodiments of the application.

[0215] In the above-described embodiments of the application, the description of each embodiment has its own focus, and the parts not described in detail in a certain embodiment can be referred to the related description of other embodiments.

[0216] In the several embodiments provided by the present application, it should be understood that the disclosed client can be implemented in other ways. Of course, the above-described device embodiments are only schematic, and the division of units is only a logical function division, and there can be another division manner in actual implementation, for example, a plurality of units or components can be combined or integrated into another system, or some features can be ignored or not executed. In addition, the coupling or direct coupling or communication connection between the units shown or discussed can be indirect coupling or communication connection through some interface, unit or module, and can be electrical or other forms.

[0217] The units described as separate components can or can not be physically separate, and the components shown as units can or can not be physical units, that is, they can be located in one place, or can be distributed on a plurality of network units. Part or all of the units can be selected according to actual needs to achieve the purpose of the embodiment.

[0218] In addition, each of the functional units in the various embodiments of the present application can be integrated in one processing unit, or each of the units can exist physically, or two or more units can be integrated in one unit. The integrated unit can be implemented in the form of hardware, or in the form of a software functional unit.

[0219] The above is only the preferred embodiment of the present application, and it should be pointed out that, for those skilled in the art, without departing from the principles of the present application, a number of improvements and refinements can be made, which should also be considered as the protection scope of the present application.

Claims

1. A method for subscribing to diagnostic data, characterized in that, include: Based on the diagnostic configuration table, the system sends the first diagnostic configuration information to the kernel diagnostic management center and the second diagnostic configuration information to the application diagnostic management center. The diagnostic configuration table is used to instruct at least one other electronic control unit to diagnose the target electronic control unit. The kernel diagnostic management center obtains the diagnostic data reported by each kernel module of the target electronic control unit in real time, and the application diagnostic management center obtains the diagnostic data reported by each application module of the target electronic control unit in real time. The system obtains the first unit diagnostic data reported by the kernel diagnostic management center based on the first diagnostic configuration information, and obtains the second unit diagnostic data reported by the application diagnostic management center based on the second diagnostic configuration information. The diagnostic data reported by each kernel module includes the first unit diagnostic data, and the diagnostic data reported by each application module includes the second unit diagnostic data. When the target unit diagnostic data of the electronic control unit is obtained based on the first unit diagnostic data and the second unit diagnostic data, the target unit diagnostic data is forwarded to the at least one other electronic control unit according to the diagnostic configuration table.

2. The method according to claim 1, characterized in that, The step of obtaining the first unit diagnostic data reported by the kernel diagnostic management center based on the first diagnostic configuration information includes: The kernel diagnostic management center obtains the first diagnostic data of the target kernel module determined from the diagnostic data reported by each kernel module based on the kernel diagnostic module information, based on the diagnostic priority information, performs priority identification processing on the first diagnostic data of the target kernel module, and obtains the second diagnostic data of the target priority. The second diagnostic data is determined as the first unit diagnostic data. The first diagnostic configuration information includes the diagnostic priority information and the kernel diagnostic module information. The diagnostic priority information is used to indicate the target priority. The target priority includes high, medium and low priorities. The kernel diagnostic module information is used to indicate the target kernel module. The step of obtaining the second unit diagnostic data reported by the application diagnostic management center based on the second diagnostic configuration information includes: The application diagnostic management center obtains the third diagnostic data of the target application module determined from the diagnostic data reported by each application module based on the diagnostic priority information, and performs priority identification processing on the third diagnostic data of the target application module based on the application diagnostic module information to obtain the fourth diagnostic data of the target priority. The fourth diagnostic data is determined as the second unit diagnostic data. The second diagnostic configuration information includes the diagnostic priority information and the application diagnostic module information. The diagnostic priority information is used to indicate the target priority, and the target priority includes high, medium and low priorities. The application diagnostic module information is used to indicate the target application module.

3. The method according to claim 2, characterized in that, Based on the diagnostic data reported by each kernel module, the first diagnostic data of the target kernel module is determined, including: Obtain the first diagnostic event reported by the first kernel module, wherein each kernel module includes the first kernel module; When the first kernel module matches the target kernel module indicated by the kernel diagnostic module information, and the effective time of the first diagnostic event is greater than the first time threshold, the first diagnostic event is encapsulated to obtain first diagnostic sub-data. The first diagnostic data includes the first diagnostic sub-data, and the kernel diagnostic time information included in the first diagnostic configuration information is used to indicate the first time threshold. Based on the application diagnostic module information, the third diagnostic data of the target application module is determined from the diagnostic data reported by each application module, including: Obtain the second diagnostic event reported by the first application module, wherein each application module includes the first application module; When the first application module matches the target application module indicated by the application diagnostic module information, and the effective time of the second diagnostic event is greater than the second time threshold, the second diagnostic event is encapsulated to obtain third diagnostic sub-data. The third diagnostic data includes the third diagnostic sub-data, and the application diagnostic time information included in the second diagnostic configuration information is used to indicate the second time threshold.

4. The method according to claim 3, characterized in that, Before encapsulating the first diagnostic event to obtain the first diagnostic sub-data, the method further includes: Obtain the first enable flag indicated by the kernel diagnostic module information; If the first enable flag is the target flag and the module flag of the first kernel module is consistent with the flag of the target kernel module, then the first kernel module is determined to match the target kernel module indicated by the kernel diagnostic module information. Before encapsulating the second diagnostic event to obtain the third diagnostic sub-data, the method further includes: The second enable flag indicating the information from the application diagnostic module is obtained; If the second enable identifier is the target identifier and the module identifier of the first application module is consistent with the identifier of the target application module, it is determined that the first application module matches the target application module indicated by the application diagnostic module information.

5. The method according to claim 2, characterized in that, Before forwarding the target unit diagnostic data to the at least one other electronic control unit according to the diagnostic configuration table, the method further includes: The high-priority diagnostic data of the first unit diagnostic data and the high-priority diagnostic data of the second unit diagnostic data are stored in the first position of the target diagnostic queue through the first transmission channel; The high-priority diagnostic data of the first unit diagnostic data and the high-priority diagnostic data of the second unit diagnostic data are stored in the second position of the target diagnostic queue through the second transmission channel, wherein the second position is adjacent to the first position and is located after the first position; The low-priority diagnostic data of the first unit diagnostic data and the low-priority diagnostic data of the second unit diagnostic data are stored in the third position of the target diagnostic queue through the third transmission channel, wherein the third position is adjacent to the second position and is located after the second position; The diagnostic data stored in the target diagnostic queue within the target time period is determined as the target unit diagnostic data.

6. The method according to any one of claims 1-5, characterized in that, Before sending the first diagnostic configuration information to the kernel diagnostic management center based on the diagnostic configuration table, and the second diagnostic configuration information to the application diagnostic management center, the method further includes: Read subscription information from the diagnostic configuration table, wherein the subscription information is used to indicate the subscription request of the at least one other electronic control unit for the diagnostic data of the target electronic control unit; Based on the subscription information, a first diagnostic configuration table for distribution to the kernel diagnostic management center and a second diagnostic configuration table for distribution to the application diagnostic management center are generated, wherein the first diagnostic configuration table is used to indicate the first diagnostic configuration information and the second diagnostic configuration table is used to indicate the second diagnostic configuration information.

7. The method according to any one of claims 1-5, characterized in that, After forwarding the target unit diagnostic data to the at least one other electronic control unit according to the diagnostic configuration table, the method further includes: If abnormal diagnostic data is detected in the diagnostic data of the target unit, a function degradation strategy is determined according to the abnormality type of the abnormal diagnostic data, and the function degradation operation is performed on the target electronic control unit according to the function degradation strategy.

8. A diagnostic data subscription device, characterized in that, include: The issuing unit is used to issue first diagnostic configuration information to the kernel diagnostic management center and second diagnostic configuration information to the application diagnostic management center based on the diagnostic configuration table. The diagnostic configuration table is used to instruct at least one other electronic control unit to diagnose the target electronic control unit. The kernel diagnostic management center obtains the diagnostic data reported by each kernel module of the target electronic control unit in real time, and the application diagnostic management center obtains the diagnostic data reported by each application module of the target electronic control unit in real time. The acquisition unit is used to acquire the first unit diagnostic data reported by the kernel diagnostic management center based on the first diagnostic configuration information, and to acquire the second unit diagnostic data reported by the application diagnostic management center based on the second diagnostic configuration information, wherein the diagnostic data reported by each kernel module includes the first unit diagnostic data, and the diagnostic data reported by each application module includes the second unit diagnostic data. A forwarding unit is configured to forward the target unit diagnostic data to the at least one other electronic control unit according to the diagnostic configuration table, provided that the target unit diagnostic data of the electronic control unit is obtained based on the first unit diagnostic data and the second unit diagnostic data.

9. A computer-readable storage medium, characterized in that, The computer-readable storage medium includes a stored program, wherein the program, when executed, performs the method of any one of claims 1 to 7.

10. An electronic device comprising a memory and a processor, characterized in that, The memory stores a computer program, and the processor is configured to execute the method of any one of claims 1 to 7 through the computer program.

Citation Information

Patent Citations

  • System and method for generating diagnostic test files associated with a battery pack

    CN104321660A

  • Vehicle diagnosis system and method, storage medium and vehicle

    CN115617558A