Method and device for collecting diagnostic data
By using an active diagnostic data acquisition method to detect vehicle status and configure acquisition methods, the problem of lag in traditional on-board diagnostic systems is solved. This enables targeted data acquisition and fault prediction even in fault-free conditions, improving data accuracy and security.
Patent Information
- Authority / Receiving Office
- CN · China
- Patent Type
- Applications(China)
- Current Assignee / Owner
- Filing Date
- 2025-12-09
- Publication Date
- 2026-03-31
AI Technical Summary
Traditional on-board diagnostic systems can only collect diagnostic data when fault codes appear, which is lagging and means that the collected data cannot truly reflect the cause of the fault. In addition, they are costly and cannot analyze vehicle anomalies from massive amounts of data.
This paper provides an active diagnostic data acquisition method that proactively triggers data acquisition by detecting vehicle status. It uses pre-configured acquisition methods to identify the data to be collected and supports multiple triggering channels such as drivers, cloud servers, and after-sales technicians to initiate commands and collect real-time data corresponding to vehicle status.
It enables targeted collection of diagnostic data in fault-free conditions, avoids data overwriting after a fault, improves data accuracy and security, supports applicability to multiple scenarios, and can predict future faults and provide early warnings.
Smart Images

Figure CN121764023A_ABST
Abstract
Description
Technical Field
[0001] This manual relates to the field of automotive electronics technology, and in particular to a method and apparatus for acquiring diagnostic data. Background Technology
[0002] Diagnostic data for automobiles are quantifiable indicators that characterize the technical condition of an automobile assembly or system, obtained through testing methods.
[0003] Traditional on-board diagnostic (OBD) systems only collect diagnostic data when a vehicle generates a Diagnostic Trouble Code (DTC). This passive data collection method is delayed and carries the risk of data that caused the fault being overwritten by data generated after the fault, resulting in the collected diagnostic data failing to accurately reflect the cause of the fault.
[0004] In other words, existing technologies suffer from inaccurate diagnostic data. Summary of the Invention
[0005] In view of the above, one or more embodiments of this specification provide a method and apparatus for acquiring diagnostic data, an electronic device, and a storage medium to solve the problems existing in the related art.
[0006] To achieve the above objectives, one or more embodiments of this specification provide the following technical solutions: According to a first aspect of the embodiments of this specification, a method for acquiring diagnostic data is provided, the method comprising: In response to actively triggered commands to collect diagnostic data, the vehicle status is detected. Obtain a pre-configured data collection method corresponding to the current vehicle status, wherein the data collection method includes a data identifier for the data to be collected; According to the acquisition method, real-time data corresponding to the data identifier is acquired, and the real-time data is used as diagnostic data.
[0007] Optionally, the response to the actively triggered acquisition command for diagnostic data includes at least one of the following: In response to a diagnostic data collection command initiated through the vehicle's infotainment system or a mobile terminal connected to the infotainment system; In response to a diagnostic data collection command initiated by a cloud server connected to the vehicle infotainment system via a vehicle network; In response to a diagnostic data acquisition command initiated by a diagnostic terminal that establishes communication with the vehicle infotainment system.
[0008] Optionally, the vehicle status includes at least one of the following: whether the vehicle is started, whether it has reached a specific operating condition after starting, and whether there is a fault. Regarding whether the vehicle is started, the detection of the current vehicle status includes: Detect the current vehicle start status signal and determine whether the vehicle is started based on the start status signal; Regarding whether the vehicle has reached a specific operating condition after startup, the detection of the current vehicle status includes: When vehicle startup is detected, the vehicle's operating condition is detected, and if the operating condition meets a specific condition, the vehicle is determined to be operating under a specific condition. To determine whether a fault exists, the detection of the current vehicle status includes: When the vehicle is detected to be starting, the system checks for fault signals and determines the type of fault based on the fault signals detected.
[0009] Optionally, the method for obtaining the pre-configured data collection method corresponding to the current vehicle status includes at least one of the following: If the current vehicle status is detected as "started", then obtain the data identifier of the pre-configured basic diagnostic data corresponding to "started"; If the current vehicle status is detected as started and the operating condition is a specific condition, then the pre-configured basic diagnostic data and the data identifier of the specific diagnostic data corresponding to the specific condition are obtained. If the current vehicle status is found to be faulty and the fault type has been determined, then the pre-configured basic diagnostic data and the data identifier of the specific diagnostic data corresponding to the fault type are obtained.
[0010] Optionally, the specific operating conditions include rapid acceleration, rapid deceleration, uphill or downhill. The detection of the vehicle's operating conditions, and the determination that the vehicle is operating in a specific condition when the operating conditions meet specific conditions, includes at least one of the following: Check the rate of change of the accelerator pedal signal, and determine whether the vehicle's operating condition is rapid acceleration or rapid deceleration based on the rate of change. The slope signal is detected, and the vehicle's operating condition is determined as uphill or downhill based on the slope signal.
[0011] Optionally, the method further includes: In response to a modification instruction for the data identifier of the required data to be collected, including the acquisition method, the data identifier of the required data to be collected is updated based on the modification instruction; The collection of real-time data corresponding to the data identifier includes: The real-time data corresponding to the collected and updated data identifiers.
[0012] Optionally, the data acquisition method may also include the duration of data acquisition; The collection of real-time data corresponding to the data identifier includes: Collect real-time data corresponding to the data identifier within a continuous duration after the current moment.
[0013] Optionally, the acquisition command carries voice information and / or text information input by the initiator; the method further includes: The voice information and / or text information are input into the vehicle-mounted large model to determine the diagnostic intent of the initiator, and the fault type corresponding to the diagnostic intent is taken as the vehicle status.
[0014] Optionally, the method further includes: The collected diagnostic data is uploaded to a cloud server, so that the cloud server generates a current vehicle health report based on the diagnostic data or the diagnostic data combined with the vehicle's historical diagnostic data. The health report includes fault warning information and fault handling solutions when a fault is predicted to exist in the current vehicle.
[0015] According to a second aspect of the embodiments of this specification, a diagnostic data acquisition device is provided, the device comprising: The detection unit, in response to actively triggered commands for collecting diagnostic data, detects the current vehicle status. The acquisition unit acquires a pre-configured collection method corresponding to the current vehicle status, wherein the collection method includes a data identifier for the data to be collected; The acquisition unit acquires real-time data corresponding to the data identifier according to the acquisition method, and uses the real-time data as diagnostic data.
[0016] According to a third aspect of the embodiments of this specification, an electronic device is provided, including a communication interface, a processor, a memory, and a bus, wherein the communication interface, the processor, and the memory are interconnected via the bus; The memory stores machine-readable instructions, and the processor executes the above method by invoking the machine-readable instructions.
[0017] According to a fourth aspect of the embodiments of this specification, a machine-readable storage medium is provided, the machine-readable storage medium storing machine-readable instructions, which, when invoked and executed by a processor, implement the above-described method.
[0018] The technical solutions provided in the embodiments of this specification may include the following beneficial effects: It supports proactively triggering the collection of diagnostic data by detecting the current vehicle status and then obtaining a pre-configured collection method corresponding to that vehicle status. This pre-configured collection method is used to determine which data belongs to the diagnostic data that needs to be collected, thereby collecting the necessary diagnostic data in a targeted manner.
[0019] On the one hand, it can proactively collect vehicle diagnostic data without triggering a fault.
[0020] On the other hand, by actively collecting diagnostic data, diagnostic data can be fixed before a vehicle malfunctions, avoiding the problem of inaccurate diagnostic data collected after a malfunction is detected.
[0021] On the other hand, by analyzing diagnostic data, potential future vehicle malfunctions can be predicted, thus providing early warnings and prevention, and improving safety.
[0022] On the other hand, it supports various active triggering methods to initiate diagnostic data collection commands (such as active triggering by the driver, active triggering by the cloud server, active triggering by after-sales technicians, etc.) to improve the multi-scenario applicability of the embodiments in this specification. Attached Figure Description
[0023] Figure 1 This specification provides a system architecture diagram of an active vehicle diagnostic data acquisition system as an exemplary embodiment.
[0024] Figure 2 This is a flowchart illustrating a diagnostic data acquisition method provided as an exemplary embodiment of this specification.
[0025] Figure 3 This is a schematic diagram illustrating the interaction between various modules in an active vehicle diagnostic data acquisition system provided as an exemplary embodiment of this specification.
[0026] Figure 4 This is a schematic diagram of a diagnostic vehicle status monitoring module provided as an exemplary embodiment of this specification.
[0027] Figure 5 This is a schematic diagram of a diagnostic data acquisition and management module provided for an exemplary embodiment of this specification.
[0028] Figure 6 This is a schematic diagram of a diagnostic data acquisition configuration table provided for an exemplary embodiment of this specification.
[0029] Figure 7 This is a schematic diagram illustrating a driver triggering diagnostic data acquisition as an exemplary embodiment of this specification.
[0030] Figure 8This is a schematic diagram of a diagnostic data acquisition and uploading module provided as an exemplary embodiment of this specification.
[0031] Figure 9 This is a schematic diagram illustrating the triggering of diagnostic data collection by a cloud server, provided as an exemplary embodiment of this specification.
[0032] Figure 10 This is a schematic diagram of the structure of an electronic device containing a diagnostic data acquisition device, provided as an exemplary embodiment of this specification.
[0033] Figure 11 This is a block diagram of a diagnostic data acquisition device provided for an exemplary embodiment of this specification. Detailed Implementation
[0034] Exemplary embodiments will now be described in detail, examples of which are illustrated in the accompanying drawings. When the following description relates to the drawings, unless otherwise indicated, the same numerals in different drawings denote the same or similar elements. The embodiments described in the following exemplary embodiments do not represent all embodiments consistent with one or more embodiments of this specification. Rather, they are merely examples of apparatuses and methods consistent with some aspects of one or more embodiments of this specification as detailed in the appended claims.
[0035] It should be noted that the steps of the corresponding methods are not necessarily performed in the order shown and described in this specification in other embodiments. In some other embodiments, the methods may include more or fewer steps than described in this specification. Furthermore, a single step described in this specification may be broken down into multiple steps in other embodiments; and multiple steps described in this specification may be combined into a single step in other embodiments.
[0036] like Figure 1 The diagram shows a system architecture of an on-board diagnostic system. Figure 1 The system may include a vehicle terminal 10, a cloud server 20 corresponding to the vehicle terminal 10, and a mobile terminal 30 bound to the vehicle terminal 10. The vehicle terminal 10, the cloud server 20, and the mobile terminal 30 can interact with each other via wired or wireless means to perform vehicle-related services, which may include the collection of diagnostic data as described in this specification.
[0037] As mentioned earlier, traditional on-board diagnostic systems only collect relevant diagnostic data when a vehicle displays a fault code. This passively triggered collection method (hereinafter referred to as passive) has a lag and is prone to the risk of the data that caused the fault being overwritten by the data after the fault, thus resulting in the collected diagnostic data failing to accurately reflect the cause of the fault.
[0038] Therefore, this specification provides a data acquisition system 100 with an active triggering acquisition method (hereinafter referred to as active). The data acquisition system 100 is located in the vehicle terminal 10 and can acquire diagnostic data at any time based on acquisition commands, instead of only acquiring diagnostic data after a fault code appears, as is the case with the passive method.
[0039] It is understood that the proactive approach may include one or more triggering channels. For example, the mobile terminal 30 may proactively initiate a diagnostic data collection command to the vehicle terminal 10, or the cloud server 20 may proactively initiate a diagnostic data collection command to the vehicle terminal 10, or the vehicle terminal 10 itself may initiate a diagnostic data collection command.
[0040] In this specification, the mobile terminal 30 may include, for example, a smartphone used by the driver, on which a vehicle app is installed, and the vehicle app is linked to the vehicle terminal 10. Alternatively, the mobile terminal 30 may also include a diagnostic terminal (such as a diagnostic tool) used by after-sales technicians, which can be connected to the vehicle terminal 10's infotainment system via a data cable. In this way, the driver can actively trigger the collection of diagnostic data on the smartphone, and the technician can actively trigger the collection of diagnostic data on the diagnostic tool.
[0041] The cloud server 20 may include a server, a server cluster, or a cloud service built on a server cluster that provides cloud services to the vehicle. The cloud server 20 may periodically or proactively collect diagnostic data from the vehicle 10 based on cloud-configured policies.
[0042] It should be noted that the technical challenges of the active type provided in this specification compared to the existing passive type are as follows: Passive diagnostic methods have a defined data collection scope, namely, collecting diagnostic data related to fault codes. Active diagnostic methods, however, lack a defined data collection scope because they do not use fault codes. Since each vehicle generates a massive amount of unrelated data, collecting all of it would be prohibitively expensive and would also prevent the analysis of potential vehicle anomalies from this vast amount of data.
[0043] In view of this, the acquisition system 100 provided in this specification, and the subsequent embodiments of the diagnostic data acquisition method corresponding to the acquisition system 100, not only support the active triggering of diagnostic data acquisition, but also, through certain technical means, can clarify the range of diagnostic data to be acquired for each acquisition command in the absence of fault codes, thereby acquiring the diagnostic data that needs to be acquired in a targeted manner.
[0044] like Figure 1As shown, the acquisition system 100 may include a diagnostic vehicle status monitoring module 101, a diagnostic data acquisition and management module 102, and a diagnostic data acquisition and uploading module 103.
[0045] The vehicle status monitoring module 101 is used to continuously monitor the current vehicle status.
[0046] The diagnostic data acquisition and management module 102 is used to receive the vehicle status output by the diagnostic vehicle status monitoring module 101. By detecting the current vehicle status, it obtains the pre-configured acquisition method corresponding to the vehicle status. Through the pre-configured acquisition method, it determines which data belongs to the diagnostic data that needs to be collected, and thus collects the diagnostic data that needs to be collected in a targeted manner.
[0047] The diagnostic data acquisition and upload module 103 is used to establish a communication connection between the vehicle terminal 10 and the cloud server 20, and to upload the diagnostic data acquired by the diagnostic data acquisition and management module 102 to the cloud server 20. If communication with the cloud server 20 cannot be established, the diagnostic data is temporarily stored in the local storage and uploaded when communication is restored.
[0048] The cloud server 20 can receive, store, and analyze diagnostic data uploaded by the diagnostic data acquisition and upload module 103, and provide fault warnings to the vehicle terminal 10 based on the analysis results. Furthermore, the cloud server 20 can also support remote data retrieval, historical diagnostic data analysis, and diagnostic requests initiated by the driver.
[0049] The method for collecting diagnostic data in this manual will be described in detail below with reference to the accompanying drawings.
[0050] Please refer to Figure 2 , Figure 2 A flowchart illustrating a method for acquiring diagnostic data, provided as an exemplary embodiment of this specification, the method comprising: Step 210: In response to the actively triggered command to collect diagnostic data, detect the current vehicle status.
[0051] This embodiment can be applied to the aforementioned Figure 1 The data acquisition system 100 shown in the figure can also be considered to be applied to the vehicle end 10 in some embodiments.
[0052] As before Figure 1 As shown in the diagram, the acquisition of diagnostic data provided in this specification is proactive, and the proactive approach may include one or more triggering channels. For example, the mobile terminal 30 may proactively initiate a diagnostic data acquisition command to the vehicle terminal 10, or the cloud server 20 may proactively initiate a diagnostic data acquisition command to the vehicle terminal 10, or the vehicle terminal 10 itself may initiate a diagnostic data acquisition command.
[0053] The following is combined with Figure 3 The following diagram illustrates the interaction between the modules in the active vehicle diagnostic data acquisition system.
[0054] The response to an actively triggered instruction for acquiring diagnostic data includes at least one of the following: 1) In response to a diagnostic data collection command initiated by the vehicle's infotainment system or a mobile terminal connected to the infotainment system.
[0055] like Figure 3 As shown, vehicles are generally equipped with an in-vehicle infotainment system, which can be understood as the "brain" of the vehicle. This system typically provides functions such as signal processing, vehicle control, data calculation, content display, and external interaction. Additionally, an in-vehicle intelligent voice system can be deployed within the infotainment system. This system can receive the driver's voice information through the vehicle's onboard audio equipment (such as a microphone) and can also play audio information (such as songs, navigation, or other prompts) through the vehicle's onboard audio equipment (such as a stereo).
[0056] Understandably, the audio receiver can continuously collect audio information (including voice information issued by the driver), and can also collect the driver's voice information after detecting a specific instruction issued by the driver (such as "Hello, XX", where XX can be a brand name or other specific words). After receiving the voice information issued by the driver, the vehicle system can use the in-vehicle intelligent language system to identify whether there is a diagnostic data collection instruction in the voice information. If so, the execution of step 210 is triggered.
[0057] like Figure 3 As shown, vehicles are generally also equipped with buttons (such as physical buttons or virtual buttons displayed on a touch screen) for users to interact with the vehicle system. The driver can actively trigger the collection command for diagnostic data through this button, thereby triggering the execution of step 210.
[0058] In addition to actively triggering data collection commands through the vehicle's infotainment system, drivers can also do so via a mobile terminal connected to the vehicle's infotainment system. Figure 3 (Not shown in the image) The driver can trigger the data acquisition command by operating on the device. Similar to the vehicle infotainment system, the driver can also trigger the data acquisition command by voice, button, or text. That is, the user can input text information, and if the data acquisition command is recognized from the text information, the execution of step 210 can be triggered.
[0059] 2) In response to a diagnostic data collection command initiated by a cloud server connected to the vehicle infotainment system via the Internet of Vehicles.
[0060] like Figure 3 As shown, the vehicle infotainment system may also include a vehicle communication module, which can be connected to the communication module of the cloud server or to the vehicle APP on the mobile terminal used by the driver.
[0061] The cloud server can proactively send a diagnostic data collection command to the vehicle communication module through the communication module, thereby triggering the execution of step 210.
[0062] 3) In response to a diagnostic data acquisition command initiated by a diagnostic terminal that establishes communication with the vehicle infotainment system.
[0063] like Figure 3 As shown, after-sales technicians can indirectly initiate diagnostic data collection commands to the vehicle via a cloud server, thereby triggering the execution of step 210. Alternatively, technicians can also use a diagnostic terminal (such as...) Figure 3 The diagnostic terminal (shown in the figure) sends a diagnostic data collection command to the vehicle, thereby triggering the execution of step 210; the diagnostic terminal can be connected to the vehicle system via a data cable (not shown in the figure).
[0064] This specification supports various active triggering methods to initiate diagnostic data collection commands (such as driver-initiated triggering, cloud server-initiated triggering, after-sales technician-initiated triggering, etc.) to improve the multi-scenario applicability of this specification's embodiments.
[0065] It is understandable that, regardless of which triggering channel actively initiates the data collection command, step 210, after responding to the data collection command, will proceed as follows: Figure 3 As shown, the vehicle status can be detected by the diagnostic vehicle status monitoring module.
[0066] In practical applications, diagnostic data collection typically occurs at specific stages. For example, diagnostic data is usually collected during vehicle startup to determine if there are any abnormalities, allowing for timely alerts to the driver and preventing accidents caused by malfunctions. Similarly, diagnostic data is often collected when the vehicle is operating under specific conditions (generally high-risk conditions) due to inherent safety risks. For instance, during rapid acceleration, the power load increases dramatically, necessitating the collection of relevant diagnostic data to prevent malfunctions or safety risks caused by this sudden acceleration. Furthermore, diagnostic data is also required for driving safety when a malfunction occurs during vehicle operation.
[0067] By configuring these specific vehicle states that require diagnostic data collection, a corresponding collection method can be configured for each of these specific vehicle states; thus, after a specific vehicle state is detected, diagnostic data can be collected in a targeted manner based on the pre-configured collection method.
[0068] Based on this, in an exemplary embodiment, the vehicle status may include at least one of the following: whether the vehicle is started, whether it has been running to a specific operating condition after starting, and whether there is a fault. 1) Regarding whether the vehicle is started, the detection of the current vehicle status includes: Detect the current vehicle start status signal and determine whether the vehicle is started based on the start status signal; 2) Regarding whether the vehicle has reached a specific operating condition after startup, the detection of the current vehicle status includes at least one of the following: When vehicle startup is detected, the vehicle's operating condition is detected, and when the operating condition meets a specific condition, the vehicle is determined to be operating under that specific condition.
[0069] For example, the specific operating condition may include, but is not limited to, rapid acceleration, rapid deceleration, uphill or downhill; the detection of the vehicle's operating condition and the determination that the vehicle is operating in the specific operating condition when the operating condition meets the specific operating condition includes at least one of the following: The rate of change of the accelerator pedal signal is detected, and the vehicle's operating condition is determined to be either rapid acceleration or rapid deceleration based on the rate of change. The slope signal is detected, and the vehicle's operating condition is determined as uphill or downhill based on the slope signal. For example, when the rate of increase in the accelerator pedal signal exceeds a preset rate of change, it is determined to be rapid acceleration; conversely, when the rate of decrease in the accelerator pedal signal exceeds a preset rate of change, it is determined to be rapid deceleration. Similarly, when the gradient signal is a positive preset gradient, it is determined to be uphill; and when the gradient signal is a negative preset gradient, it is determined to be downhill. These preset rates of change and preset gradients can be manually set empirical values, typically referencing commonly used industry values, or they can be flexibly adjusted according to actual needs.
[0070] 3) To determine whether a fault exists, the detection of the current vehicle status includes: When the vehicle is detected to be starting, the system checks for fault signals and determines the type of fault based on the fault signals detected.
[0071] like Figure 4 As shown, the diagnostic vehicle status monitoring module can receive several different signals (such as accelerator pedal signal, vehicle usage mode, ambient temperature signal, current vehicle start status signal, etc.).
[0072] First, the vehicle's current start status signal can be used to determine whether the vehicle is started. For example, a start status signal of 1 indicates that the vehicle is started, while a start status signal of 0 indicates that the vehicle is not started.
[0073] Next, with the vehicle running, the operating conditions can be determined by inputting accelerator pedal signals, gradient signals, etc. For example, the rate of change of the accelerator pedal can be used to determine whether the vehicle is accelerating rapidly, and the gradient signal can be used to determine whether the vehicle is going uphill.
[0074] In addition, when the vehicle is running, abnormal operating conditions (fault types) can be determined by detecting the vehicle's fault signals. Examples include low battery voltage and high transmission oil temperature.
[0075] Step 220: Obtain a pre-configured data collection method corresponding to the current vehicle status, wherein the data collection method includes a data identifier for the data to be collected.
[0076] This manual pre-configures the data acquisition methods corresponding to various vehicle states, clearly defining the diagnostic data required for each vehicle state, thereby enabling targeted acquisition of the necessary diagnostic data.
[0077] like Figure 3 As shown, the diagnostic data acquisition and management module can determine the acquisition method and perform diagnostic data acquisition.
[0078] The following is combined Figure 5 The diagram shown illustrates the diagnostic data acquisition and management module. This module can determine the appropriate acquisition method based on the vehicle's status.
[0079] The data collection method may include pre-configured data identifiers corresponding to the vehicle status and the data to be collected.
[0080] like Figure 5 As shown, for example, if the vehicle is in a rapid acceleration condition, the corresponding data identifiers may include: 0x0101, 0x0102, 0x0110, 0x0112, 0x0113, 0x0114, 0x0115.
[0081] If the vehicle status is a power loss fault, the corresponding data identifiers may include: 0x0101, 0x0102, 0x0110, 0x0112, 0x0113, 0x0114, 0x0116, 0x0117.
[0082] The data identifiers shown above can also be understood as data identifier numbers, and each data identifier corresponds to a data type. For example, 0x0101 represents a timestamp, 0x0102 represents vehicle mileage, and 0x0110 represents the power battery temperature, etc. The meanings of the relevant data identifiers can be found in [reference needed]. Figure 6 The data acquisition configuration table shown is not listed here.
[0083] Understandably, each possible vehicle state can be pre-configured, such as... Figure 6 The data acquisition configuration table shown can include basic diagnostic data or specific diagnostic data for each vehicle status. Therefore, in step 220, the required data acquisition method corresponding to the current vehicle status can be obtained.
[0084] The following will continue to combine Figure 6 Here is a description of some vehicle conditions: If the current vehicle status is detected as started and the operating condition is a specific condition, then the pre-configured basic diagnostic data and the data identifier of the specific diagnostic data corresponding to the specific condition are obtained. If the current vehicle status is found to be faulty and the fault type has been determined, then the pre-configured basic diagnostic data and the data identifier of the specific diagnostic data corresponding to the fault type are obtained.
[0085] 1) If the current vehicle status is detected as not started, then obtain the data identifier of the pre-configured basic diagnostic data corresponding to not started.
[0086] When the vehicle is in a "vehicle not started" state, it is in a low-power mode, and the corresponding basic diagnostic data identifiers are as follows: Figure 6 The data identifiers shown are: 0x0101 (collection timestamp), 0x0110 (power battery temperature), and 0x0112 (power battery voltage).
[0087] 2) If the current vehicle status is detected as "started", then obtain the data identifier of the pre-configured basic diagnostic data corresponding to "started".
[0088] When the vehicle status is "vehicle started", the corresponding data identifier is as follows: Figure 6 The data identifiers for the basic diagnostic data shown are: 0x0101 (collection timestamp), 0x0102 (vehicle mileage), 0x0110 (power battery temperature), 0x0112 (power battery voltage), 0x0114 (power battery charge), and 0x0113 (accelerator pedal opening).
[0089] 3) If the current vehicle status is found to be started and the operating condition is a specific condition, then the pre-configured basic diagnostic data and the data identifier of the specific diagnostic data corresponding to the specific condition are obtained.
[0090] Under specific operating conditions, in addition to the basic diagnostic data, there is also specific diagnostic data corresponding to that particular condition. Let's take the aforementioned rapid acceleration and uphill operating conditions as examples: When the vehicle is in a rapid acceleration condition, the corresponding basic diagnostic data and the data identifiers of the specific diagnostic data corresponding to the rapid acceleration condition are as follows: Figure 6 Data identifiers shown in the data acquisition configuration table under medium-acceleration conditions: Basic diagnostic data identifiers: 0x0101 (collection timestamp), 0x0102 (vehicle mileage), 0x0110 (power battery temperature), 0x0112 (power battery voltage), 0x0114 (power battery charge), 0x0113 (accelerator pedal opening); Specific diagnostic data identifiers: 0x0115 (engine coolant temperature), 0x0119 (vehicle acceleration).
[0091] When the vehicle is in an uphill driving condition, the corresponding basic diagnostic data and the data identifiers for the specific diagnostic data corresponding to the uphill driving condition are as follows: Figure 6 Data identifiers shown in the data acquisition configuration table for medium and steep slope conditions: Data identifiers for basic diagnostic data: 0x0101 (collection timestamp), 0x0102 (vehicle mileage), 0x0110 (power battery temperature), 0x0112 (power battery voltage), 0x0114 (power battery charge), 0x0113 (accelerator pedal opening); Data identifiers for specific diagnostic data: 0x0120 (slope signal), 0x0119 (vehicle acceleration).
[0092] 5) If the current vehicle status is found to be faulty and the fault type has been determined, then obtain the pre-configured basic diagnostic data and the data identifier of the specific diagnostic data corresponding to the fault type.
[0093] Similar to specific operating conditions, when a vehicle malfunctions and the type of malfunction has been determined, in addition to the basic diagnostic data, specific diagnostic data corresponding to the malfunction type is also included. The following uses power loss malfunction and communication loss malfunction as examples to illustrate this: When the vehicle is in a power loss fault state, the corresponding basic diagnostic data and the data identifiers of the specific diagnostic data corresponding to the power loss fault are as follows: Figure 6 Data identifiers shown in the data acquisition configuration table under power loss fault: Data identifiers for basic diagnostic data: 0x0101 (collection timestamp), 0x0102 (vehicle mileage), 0x0110 (power battery temperature), 0x0112 (power battery voltage), 0x0114 (power battery charge), 0x0113 (accelerator pedal opening); Data identifiers for specific diagnostic data: 0x0116 (vehicle speed), 0x0117 (engine status), 0x0118 (transmission status).
[0094] When the vehicle status is a communication loss fault, the corresponding basic diagnostic data and the data identifier of the specific diagnostic data corresponding to the communication loss fault are as follows: Figure 6 Data identifiers shown in the data acquisition configuration table under the Zhongtong Communication loss fault: Data identifiers for basic diagnostic data: 0x0101 (collection timestamp), 0x0102 (vehicle mileage), 0x0110 (power battery temperature), 0x0112 (power battery voltage), 0x0114 (power battery charge), 0x0113 (accelerator pedal opening); Data identifiers for specific diagnostic data: 0x0116 (vehicle speed), 0x0121 (vehicle repair wake-up status), 0x0122 (network status).
[0095] It should be noted that in practical applications, there may be other different vehicle states. Due to the large number of vehicle states, it is difficult to list them all; therefore, this specification only lists some common vehicle states. It is understood that those skilled in the art can flexibly configure the required data acquisition configuration table to clearly identify the data to be collected based on the actual possible vehicle states.
[0096] In this manual, in addition to determining the data collection method based on the vehicle's condition, the data collection method can also be determined by combining the diagnostic intent of the person initiating the data collection command (such as the driver).
[0097] In an exemplary embodiment, when the aforementioned collection instruction carries voice information and / or text information of the initiator, the above method may further include: The voice information and / or text information are input into the vehicle-mounted large model to determine the diagnostic intent of the initiator, and the fault type corresponding to the diagnostic intent is taken as the vehicle status.
[0098] In this specification, the vehicle system may be equipped with an in-vehicle large model, which may refer to a large language model (LLM) deployed on the vehicle. The large language model can analyze the diagnostic intent of the initiator from the input voice information and / or text information, and then determine the corresponding collection method based on the diagnostic intent.
[0099] like Figure 7 As shown, if a driver perceives an abnormal situation in the vehicle while driving, such as shaking or vibration noise during acceleration, they can trigger a diagnostic data collection command through the in-vehicle intelligent voice system or buttons. The vehicle's infotainment system can use the in-vehicle big data model to analyze the driver's input voice and / or text information to obtain the driver's diagnostic intent, and then transmit the diagnostic intent to the diagnostic data acquisition and management module. Assuming the diagnostic intent corresponds to a power loss fault, the diagnostic data acquisition and management module can then obtain... Figure 6 The table shown below illustrates the data acquisition configuration under power loss fault conditions.
[0100] In this instruction manual, such as Figure 6 As shown, the data acquisition configuration table can include diagnostic data name, data identifier (identifier number), diagnostic data category (mainly composed of basic diagnostic data, specific diagnostic data, etc.), acquisition mode (mainly divided into periodic acquisition and event acquisition), different data acquisition frequencies, and acquisition duration.
[0101] The diagnostic data name and data identifier number can be defined according to the diagnostic data identifier (DID) in the ISO 14229-1 Unified Diagnostic Services (UDS) specification.
[0102] The data acquisition modes can be divided into periodic acquisition and event-based acquisition. Periodic acquisition refers to the collection of diagnostic data according to a preset acquisition cycle, such as collecting diagnostic data every 60 seconds. Event-based acquisition refers to the collection of data when a relevant event occurs, such as when a fault signal is detected. The corresponding acquisition mode can be configured according to actual needs.
[0103] Step 230: Collect real-time data corresponding to the data identifier according to the acquisition method, and use the real-time data as diagnostic data.
[0104] like Figure 3 As shown, after the diagnostic data acquisition and management module obtains the acquisition method, it can send the acquisition method (such as data identifier, acquisition mode, trigger flag, etc.) to the diagnostic data acquisition and upload module; then the diagnostic data acquisition and upload module will acquire the real-time data corresponding to the data identifier according to the acquisition method, and use the real-time data as diagnostic data.
[0105] The following is combined Figure 8 The diagram below illustrates the diagnostic data acquisition and upload module. This module has the authority to acquire all signals from the vehicle, allowing it to collect data signals corresponding to the data identifiers shown in the data acquisition configuration table. For example, it can acquire engine speed data (Engine Shaft Speed) based on data identifier (0x0133); and it can acquire accelerator pedal opening data (Accelerator Value) based on data identifier (0x0113).
[0106] The embodiments described in this specification enable the proactive acquisition of vehicle diagnostic data without triggering a fault. Furthermore, by proactively acquiring diagnostic data, it is possible to fix the diagnostic data before a vehicle fault occurs, avoiding the problem of inaccurate diagnostic data acquired after a fault is detected.
[0107] In one exemplary embodiment, dynamic adjustment of the data identifier obtained in step 220 can also be supported. Specifically, the method may further include: In response to a modification instruction for the data identifier of the required data to be collected, including the acquisition method, the data identifier of the required data to be collected is updated based on the modification instruction; The collection of real-time data corresponding to the data identifier in step 230 above may include: The real-time data corresponding to the collected and updated data identifiers.
[0108] In this embodiment, the initiator of the acquisition command is allowed to modify the data identifiers in the acquired acquisition method, thereby correcting the acquisition range of diagnostic data or meeting additional requirements; this improves the flexibility of diagnostic data acquisition. For example, the fault intelligent prediction model mounted on the cloud server can issue modification commands to the vehicle based on dynamically changing diagnostic needs to dynamically adjust the data identifiers to be acquired. As another example, technicians can issue modification commands to the vehicle based on actual diagnostic needs to dynamically adjust the data identifiers to be acquired. Furthermore, technicians can also upload diagnostic needs to the fault intelligent prediction model via the cloud server, enabling the model to issue modification commands to the vehicle based on these needs, allowing the vehicle to acquire corrected diagnostic data based on dynamically adjusted data identifiers and provide feedback to the technicians.
[0109] In one exemplary embodiment, the data acquisition method further includes the duration of data acquisition; The collection of real-time data corresponding to the data identifier in step 230 above may include: Collect real-time data corresponding to the data identifier within a continuous duration after the current moment.
[0110] In this embodiment, the collection of diagnostic data can continue for a period of time, thereby providing richer data support for subsequent data analysis based on continuous diagnostic data within a certain time range.
[0111] In this manual, as mentioned above, the diagnostic data collected by the vehicle can also be... Figure 3 The diagnostic data collection and upload module uploads the data to the cloud server.
[0112] Based on this, the method may further include: The collected diagnostic data is uploaded to a cloud server, so that the cloud server generates a current vehicle health report based on the diagnostic data or the diagnostic data combined with the vehicle's historical diagnostic data; wherein, the health report includes fault warning information and fault handling plan when a fault is predicted to exist in the current vehicle.
[0113] In practical applications, the limited computing resources on the vehicle side (especially for some inexpensive models) may make it difficult to respond and generate health reports in a timely manner. Therefore, the powerful computing resources of cloud servers can be used to analyze the collected diagnostic data and quickly generate the current vehicle health report.
[0114] like Figure 3 As shown, after the diagnostic data acquisition and upload module collects the diagnostic data, it can temporarily store the data in a temporary storage area and request a network upload to the cloud server. If a network connection is unavailable, the data will be stored locally and uploaded later. The uploaded diagnostic data can then be processed by the cloud server's intelligent fault prediction model to generate a current vehicle health report. This health report can then be further fed back to after-sales technicians.
[0115] In some embodiments, to make the generated health report more comprehensive and accurate, the vehicle's historical diagnostic data can be superimposed on the uploaded diagnostic data. In this way, the fault intelligent prediction model can use the historical diagnostic data to reflect the vehicle's historical health status and give a more comprehensive health report (such as whether the vehicle's historical faults have been eliminated, whether long-term faults have been alleviated or aggravated, etc.).
[0116] The following is combined Figure 9 The diagram illustrates how a cloud server triggers diagnostic data collection. The cloud server's intelligent fault prediction model analyzes the received diagnostic data to predict potential vehicle malfunctions and outputs a vehicle health report. In some embodiments, the received diagnostic data can be combined with the vehicle's historical diagnostic data for a more comprehensive prediction of potential malfunctions and to generate a more complete vehicle health report.
[0117] For example, the health report may include fault warning information and fault handling plan when a fault is predicted to exist in the current vehicle.
[0118] like Figure 3 As shown, the output health report can be fed back to the driver or after-sales technicians for fault warnings. Alternatively, if more diagnostic data is needed based on the request of after-sales technicians or drivers, a diagnostic data collection request and the required diagnostic data information can be sent to the diagnostic data collection management module. The required diagnostic data can be dynamically adjusted by the cloud-based intelligent fault prediction model according to needs. Event-triggered events are recorded and uploaded (diagnostic data is dynamically adjusted by the cloud-based intelligent fault prediction model according to needs, and the duration of each collection can be flexibly adapted).
[0119] In summary, by analyzing diagnostic data, potential future vehicle malfunctions can be predicted, allowing for early warning and prevention, thereby improving safety.
[0120] In an exemplary embodiment of this specification, an electronic device capable of implementing the above-described method is also provided.
[0121] Figure 10 This is a schematic structural diagram of an electronic device provided in an exemplary embodiment. Please refer to... Figure 10 At the hardware level, the electronic device includes a processor, internal bus, network interface, memory, and non-volatile memory, and may also include other hardware required for business operations. One or more embodiments of this specification can be implemented in software, such as the processor reading the corresponding computer program from non-volatile memory into memory and then running it. Of course, besides software implementation, one or more embodiments of this specification do not exclude other implementation methods, such as logic devices or a combination of hardware and software. That is to say, the execution entity of the following processing flow is not limited to individual logic units, but can also be hardware or logic devices.
[0122] Please refer to Figure 11 In one software implementation, a diagnostic data acquisition device is provided, the device comprising: The detection unit 1110, in response to an actively triggered command to collect diagnostic data, detects the current vehicle status. The acquisition unit 1120 acquires a pre-configured collection method corresponding to the current vehicle status, wherein the collection method includes a data identifier for the data to be collected; The acquisition unit 1130 acquires real-time data corresponding to the data identifier according to the acquisition method, and uses the real-time data as diagnostic data.
[0123] Optionally, the response of the detection unit 1110 to an actively triggered acquisition command for diagnostic data includes at least one of the following: In response to a diagnostic data collection command initiated through the vehicle's infotainment system or a mobile terminal connected to the infotainment system; In response to a diagnostic data collection command initiated by a cloud server connected to the vehicle infotainment system via a vehicle network; In response to a diagnostic data acquisition command initiated by a diagnostic terminal that establishes communication with the vehicle infotainment system.
[0124] Optionally, the vehicle status includes at least one of the following: whether the vehicle is started, whether it has reached a specific operating condition after starting, and whether there is a fault. Regarding whether the vehicle is started, the detection unit 1110 detects the current vehicle status, including: Detect the current vehicle start status signal and determine whether the vehicle is started based on the start status signal; To determine whether the vehicle has reached a specific operating condition after startup, the detection unit 1110 detects the current vehicle status, including at least one of the following: When vehicle startup is detected, the vehicle's operating condition is detected, and if the operating condition meets a specific condition, the vehicle is determined to be operating under a specific condition. To determine whether a fault exists, the detection unit 1110 detects the current vehicle status, including: When the vehicle is detected to be starting, the system checks for fault signals and determines the type of fault based on the fault signals detected.
[0125] Optionally, the method for obtaining the pre-configured data collection method corresponding to the current vehicle status includes at least one of the following: If the current vehicle status is detected as "started", then obtain the data identifier of the pre-configured basic diagnostic data corresponding to "started"; If the current vehicle status is detected as started and the operating condition is a specific condition, then the pre-configured basic diagnostic data and the data identifier of the specific diagnostic data corresponding to the specific condition are obtained. If the current vehicle status is found to be faulty and the fault type has been determined, then the pre-configured basic diagnostic data and the data identifier of the specific diagnostic data corresponding to the fault type are obtained.
[0126] Optionally, the specific operating conditions include rapid acceleration, rapid deceleration, uphill or downhill. The detection of the vehicle's operating conditions, and the determination that the vehicle is operating in a specific condition when the operating conditions meet specific conditions, includes at least one of the following: Check the rate of change of the accelerator pedal signal, and determine whether the vehicle's operating condition is rapid acceleration or rapid deceleration based on the rate of change. The slope signal is detected, and the vehicle's operating condition is determined as uphill or downhill based on the slope signal.
[0127] Optionally, the device further includes: The modification unit, in response to a modification instruction for the data identifier of the required data to be collected, including the acquisition method, updates the data identifier of the required data to be collected based on the modification instruction; The acquisition unit 1130 acquires real-time data corresponding to the data identifier, including: The real-time data corresponding to the collected and updated data identifiers.
[0128] Optionally, the data acquisition method may also include the duration of data acquisition; The acquisition unit 1130 acquires real-time data corresponding to the data identifier, including: Collect real-time data corresponding to the data identifier within a continuous duration after the current moment.
[0129] Optionally, the acquisition command carries voice and / or text information of the initiator; the device further includes: The sub-unit is determined, and the voice information and / or text information are input into the vehicle-mounted large model to determine the diagnostic intent of the initiator; The acquisition unit 1120 acquires a pre-configured data collection method corresponding to the current vehicle state, including: Obtain a pre-configured data collection method corresponding to the current vehicle status and the diagnostic intent.
[0130] Optionally, the device further includes: The uploading unit uploads the collected diagnostic data to a cloud server, so that the cloud server generates a current vehicle health report based on the diagnostic data or the diagnostic data combined with the vehicle's historical diagnostic data; wherein, the health report includes fault warning information and fault handling solutions when a fault is predicted to exist in the current vehicle.
[0131] For details on the implementation process of the functions and roles of each module in the above-mentioned device, please refer to the implementation process of the corresponding steps in the above-mentioned diagnostic data acquisition method. For relevant parts, please refer to the description of the method implementation method. It will not be repeated here.
[0132] The device embodiments described above are merely illustrative. The units described as separate components may or may not be physically separate, and the components shown as units may or may not be physical modules; that is, they may be located in one place or distributed across multiple network modules. Some or all of the units or modules can be selected to achieve the purpose of the solution described in this specification, depending on actual needs. Those skilled in the art can understand and implement this without any inventive effort.
[0133] The systems, devices, modules, or units described in the above embodiments can be implemented by computer chips or entities, or by products with certain functions. A typical implementation device is a computer, which can take the form of a personal computer, laptop computer, cellular phone, camera phone, smartphone, personal digital assistant, media player, navigation device, email sending and receiving device, game console, tablet computer, wearable device, or any combination of these devices.
[0134] In an exemplary embodiment of this specification, a vehicle is also provided, wherein the vehicle-mounted infotainment system is capable of executing the aforementioned method embodiments.
[0135] In exemplary embodiments of this specification, a machine-readable storage medium is also provided, which, when the instructions in the machine-readable storage medium are executed by a processor of an electronic device, enables the electronic device to perform the aforementioned method embodiments.
[0136] Machine-readable storage media may include data signals propagated in baseband or as part of a carrier wave, carrying readable program code. Such propagated data signals may take various forms, including but not limited to electromagnetic signals, optical signals, or any suitable combination thereof. A readable signal medium may also be any readable medium other than a readable storage medium, capable of sending, propagating, or transmitting programs for use by or in conjunction with an instruction execution system, apparatus, or device.
[0137] The program code contained on the machine-readable storage medium can be transmitted using any suitable medium, including but not limited to wireless, wired, optical fiber, RE, or any suitable combination thereof.
[0138] Program code for performing the operations described herein can be written in any combination of one or more programming languages, including object-oriented programming languages such as Java and C++, as well as conventional procedural programming languages such as C or similar languages. The program code can execute entirely on the user's computing device, partially on the user's computing device and partially on a remote computing device, or entirely on a remote computing device or server. In cases involving remote computing devices, the remote computing device can be connected to the user's computing device via any type of network, including a local area network (LAN) or a wide area network (WAN), or it can be connected to an external computing device (e.g., via the Internet using an Internet service provider).
[0139] It should also be noted that the terms "comprising," "including," or any other variations thereof are intended to cover non-exclusive inclusion, such that a process, method, article, or apparatus that comprises a list of elements includes not only those elements but also other elements not expressly listed, or elements inherent to such a process, method, article, or apparatus. Without further limitation, an element defined by the phrase "comprising one..." does not exclude the presence of other identical elements in the process, method, article, or apparatus that includes said element.
[0140] The foregoing has described specific embodiments of this specification. Other embodiments are within the scope of the appended claims. In some cases, the actions or steps recited in the claims may be performed in a different order than that shown in the embodiments and may still achieve the desired result. Furthermore, the processes depicted in the drawings do not necessarily require the specific or sequential order shown to achieve the desired result. In some embodiments, multitasking and parallel processing are possible or may be advantageous.
[0141] The terminology used in one or more embodiments of this specification is for the purpose of describing particular embodiments only and is not intended to be limiting of the one or more embodiments of this specification. The singular forms “a,” “described,” and “the” used in one or more embodiments of this specification and in the appended claims are also intended to include the plural forms unless the context clearly indicates otherwise. It should also be understood that the term “and / or” as used herein refers to and includes any or all possible combinations of one or more associated listed items.
[0142] It should be understood that although the terms first, second, third, etc., may be used to describe various information in one or more embodiments of this specification, such information should not be limited to these terms. These terms are only used to distinguish information of the same type from one another. For example, first information may also be referred to as second information without departing from the scope of one or more embodiments of this specification, and similarly, second information may also be referred to as first information. Depending on the context, the word "if" as used herein may be interpreted as "when," "in response to a determination," or "when," or "in the event of a determination."
[0143] The above description is merely a preferred embodiment of one or more embodiments of this specification and is not intended to limit the scope of one or more embodiments of this specification. Any modifications, equivalent substitutions, improvements, etc., made within the spirit and principles of one or more embodiments of this specification should be included within the protection scope of one or more embodiments of this specification.
Claims
1. A method for collecting diagnostic data, the method comprising: detecting a vehicle state of a current vehicle in response to an active triggering of a collection instruction for diagnostic data; obtaining a pre-configured collection mode corresponding to the vehicle state of the current vehicle, wherein the collection mode comprises data identifiers of required collected data; collecting real-time data corresponding to the data identifiers according to the collection mode, and taking the real-time data as diagnostic data. 2.The method of claim 1, wherein the active triggering of the collection instruction for diagnostic data comprises at least one of: a collection instruction for diagnostic data initiated by a car machine system of the current vehicle or a mobile terminal connected to the car machine system; a collection instruction for diagnostic data initiated by a cloud server connected to the car machine system through a vehicle-to-everything network; or a collection instruction for diagnostic data initiated by a diagnostic terminal in communication with the car machine system. 3.The method of claim 1, wherein the vehicle state comprises at least one of whether the vehicle is started, whether the vehicle runs to a specific working condition after being started, or whether a fault exists; and wherein the detecting of the vehicle state of the current vehicle comprises: detecting a start state signal of the current vehicle, and determining whether the vehicle is started according to the start state signal; detecting a running working condition of the vehicle and determining that the vehicle runs to a specific working condition when the running working condition meets the specific working condition, in a case that the vehicle is started; and detecting whether a fault signal exists in a case that the vehicle is started, and determining a fault type of the current vehicle according to the fault signal. 4.The method of claim 3, wherein the obtaining of the pre-configured collection mode corresponding to the vehicle state of the current vehicle comprises at least one of: obtaining data identifiers of basic diagnostic data corresponding to the vehicle being started, in a case that the vehicle state of the current vehicle is detected as the vehicle being started; obtaining data identifiers of the basic diagnostic data and specific diagnostic data corresponding to the specific working condition, in a case that the vehicle state of the current vehicle is detected as the vehicle being started and the running working condition is the specific working condition; and obtaining data identifiers of the basic diagnostic data and specific diagnostic data corresponding to the fault type, in a case that the vehicle state of the current vehicle is detected as the fault existing and the fault type is determined. 5.The method of claim 3, wherein the specific working condition comprises sudden acceleration, sudden deceleration, uphill or downhill, and wherein the detecting of the running working condition of the vehicle and the determining that the vehicle runs to a specific working condition when the running working condition meets the specific working condition comprises at least one of: checking a change rate of an accelerator pedal signal, and determining whether the running working condition of the vehicle is sudden acceleration or sudden deceleration according to the change rate; and detecting a slope signal, and determining whether the running working condition of the vehicle is uphill or downhill according to the slope signal. 6.The method of claim 1, further comprising: in response to a modification instruction of the data identifier of the required collected data comprised in the collection manner, updating the data identifier of the required collected data based on the modification instruction; the collecting real-time data corresponding to the data identifier comprises: collecting real-time data corresponding to the updated data identifier.
7. The method of claim 1, wherein the collection manner further comprises a duration of collection; the collecting real-time data corresponding to the data identifier comprises: collecting real-time data corresponding to the data identifier within the duration of collection after the current time.
8. The method of claim 1, wherein the collection instruction carries voice information and / or text information input by an initiator; the method further comprises: inputting the voice information and / or text information into an in-vehicle large model to determine a diagnostic intent of the initiator; the obtaining the collection manner corresponding to the vehicle state of the current vehicle comprises: obtaining the collection manner corresponding to the vehicle state of the current vehicle and the diagnostic intent.
9. The method of claim 1, further comprising: uploading the collected diagnostic data to a cloud server to enable the cloud server to generate a health report of the current vehicle based on the diagnostic data or the diagnostic data combined with historical diagnostic data of the vehicle; wherein the health report comprises fault warning information and fault handling scheme when a fault of the current vehicle is predicted.
10. A collection device of diagnostic data, the device comprising: a detection unit that, in response to an actively triggered collection instruction for diagnostic data, detects a vehicle state of a current vehicle; an obtaining unit that obtains a collection manner corresponding to the vehicle state of the current vehicle, wherein the collection manner comprises a data identifier of required collected data; a collection unit that collects real-time data corresponding to the data identifier according to the collection manner, and takes the real-time data as diagnostic data.
11. An electronic device, comprising: a processor; a memory for storing processor-executable instructions; wherein the processor implements the method of any one of claims 1-9 by running the executable instructions.
12. A machine-readable storage medium having stored thereon machine-readable instructions that, when executed by a processor, implement the method of any one of claims 1-9.