Distributed System and Diagnostic Method
By adopting a distributed system in the vehicle diagnostic system, using communication between edge systems and diagnostic data computers, the diagnostic sequence set is updated, and the problems of low diagnostic quality and overload load in the vehicle device in the prior art are solved, achieving more efficient diagnostic quality and load reduction effects.
Patent Information
- Application Number
- CN202111528894.8
- Authority / Receiving Office
- CN · China
- Patent Type
- Patents(China)
- Current Assignee / Owner
- Priority Date
- 2021-03-22
- Filing Date
- 2021-12-14
- Publication Date
- 2025-05-30
- Estimated Expiration
- 2041-12-14
AI Technical Summary
The prior art fails to effectively improve the diagnostic quality in vehicle diagnosis, and leads to excessive load on the vehicle device, affecting data acquisition and diagnostic execution.
A distributed system is adopted to communicate with the diagnostic data computer through the edge system, and a diagnostic controller is used to obtain and send diagnostic data based on the diagnostic sequence set, and the diagnostic sequence set is updated in the diagnostic data computer to improve diagnostic quality and reduce the load on the vehicle device.
This method can improve the diagnostic quality, reduce the load on the vehicle-mounted device, and ensure the stability and efficiency of data acquisition and diagnostic execution.
Smart Images

Figure CN115114015B_ABST
Abstract
Description
Technical Field
[0001] The present disclosure relates to a technique for diagnosing an edge system such as a vehicle. Background Art
[0002] Japanese Patent Document JP-A-2014-517378 (Patent Document 1) discloses a system for diagnosing a vehicle as an edge system. According to the present disclosure, the system has a server and a diagnostic device installed in the vehicle, a diagnostic script is sent from the server to the vehicle, and the diagnostic device in the vehicle that has received the diagnostic script performs a diagnosis according to the diagnostic script. The diagnostic script is generated by a script generation device. The script generation device creates a script independent of the platform. Preferably, the script is a combination of an OTX script and ODX control device diagnostic data. Summary of the Invention
[0003] Patent Document 1 does not consider improving the quality of the diagnosis itself based on the diagnostic script. In the method of Patent Document 1, the diagnostic device installed in the vehicle is connected to a sensor and is also responsible for acquiring sensor data measured by the sensor. Therefore, the load of the process of acquiring the sensor data measured by the sensor and the load of the process of performing a diagnosis according to the diagnostic script are both imposed on the diagnostic device. The heavy load on the diagnostic device may affect one or both of data acquisition and diagnosis execution.
[0004] An object of the present disclosure is to provide a technique by which the quality of a diagnosis can be improved and the load on an in-vehicle device can be reduced.
[0005] A distributed system according to one aspect of the present disclosure includes: an edge system, which is a mobile body or device capable of autonomous operation; and a diagnostic data computer capable of communicating with the edge system. The edge system has a mechanism unit for operation, an in-edge controller for controlling the mechanism unit, and a diagnostic controller capable of communicating with the in-edge controller via an in-vehicle network. The diagnostic controller acquires diagnostic data according to a first set of diagnostic sequences, and sends the acquired diagnostic data to the diagnostic data computer. The first set of diagnostic sequences indicates a process of diagnosing the in-edge controller by one or more diagnostic sequences defining information types and timings of acquiring diagnostic data indicating internal states of the in-edge controller. The diagnostic data computer determines the information type and the timing for acquiring diagnostic data from the in-edge controller based on the received diagnostic data, and sends a diagnostic update notification updated to a second set of diagnostic sequences to the diagnostic controller. The second set of diagnostic sequences includes diagnostic sequences defining the determined information type and timing, and the diagnostic controller performs an update from the first set of diagnostic sequences to the second set of diagnostic sequences, acquires diagnostic data according to the second set of diagnostic sequences, and sends the acquired diagnostic data to the diagnostic data computer.
[0006] According to one aspect of the present disclosure, the diagnostic quality can be improved, and the load on the in-vehicle device can be reduced. BRIEF DESCRIPTION OF THE DRAWINGS
[0007] Figure 1 is a block diagram of a distributed system according to Example 1;
[0008] Figure 2 is a diagram showing the data configuration of the sequence memory in Example 1;
[0009] Figure 3 is a sequence diagram showing the flow of a process of updating the set of diagnostic sequences in Example 1;
[0010] Figure 4 is a diagram showing an example of the hardware configuration of a computer configured in a server;
[0011] Figure 5 is a block diagram of a distributed system according to Example 2; and
[0012] Figure 6 is a diagram showing the data configuration of the sequence memory in Example 2. DETAILED DESCRIPTION
[0013] When division is required for convenience, the following embodiments will be described after being divided into multiple parts or embodiments. Unless otherwise specified, these are interrelated, and one involves, for example, a modification example, details, or supplementary description regarding another or a part of another as a whole.
[0014] In the following embodiments, when referring to element counts, etc. (including, for example, numbers, numerical values, quantities, and ranges), the elements are not limited to a specific count and can be equal to, greater than, or less than the specific count, unless, for example, otherwise specified or the elements are clearly limited to a specific count in principle.
[0015] Of course, the components (including element steps, etc.) of the following embodiments are not necessarily essential, unless, for example, otherwise specified or clearly considered essential in principle.
[0016] When referring to, for example, the shape, positional relationship, etc. of components in the following embodiments, it includes shapes, positional relationships, etc. that are substantially approximate or similar to the shape, etc., unless, for example, otherwise specified or it is clearly conceivable that this is not the case in principle. This also applies to the above numerical values and ranges.
[0017] In principle, in all the drawings used to describe the embodiments, the same components are given the same reference numerals, and repeated descriptions are omitted.
[0018] To simplify the following description, aspects of implementing various servers by a cloud server will be illustrated by way of example. Various servers can be represented in part or in whole by a computer.
[0019] Hereinafter, examples will be described.
[0020] [Example 1]
[0021] <System Configuration>
[0022] Figure 1 is a block diagram of the distributed system according to Example 1.
[0023] The distributed system 1000 has a manufacturing company server 101, a diagnostic cloud server 104, and an edge system 108.
[0024] The edge system 108 is a mobile body or device capable of autonomous operation and is a device to be diagnosed by the distributed system 1000. Details of the edge system 108 will be described later.
[0025] The diagnostic cloud server 104 is built on the cloud and can communicate with the edge system 108 via the communication network 121. The diagnostic cloud server 104 is a diagnostic data computer that collects diagnostic data of the edge system 108. Details of the diagnostic cloud server 104 will be described later.
[0026] The manufacturing company server 101 is a computer of a company that designs or manufactures the edge system 108 and is capable of collaborative operation with the communication and diagnostic cloud server 104 through communication. Details of the manufacturing company server 101 will be described later.
[0027] <Edge system>
[0028] It is conceivable that the edge system 108 is, for example, a moving body (such as a vehicle, a drone, and a robot) or a device (such as a robotic arm, a machine tool, and a numerically controlled lathe) that can operate automatically. Autonomous driving is an example of "automatic operation". The edge system 108 is not limited to devices manufactured by the same company and includes multiple generations and multiple types of devices. The edge system 108 is not limited to a moving body or a device and can be used as both.
[0029] The edge system 108 has a mechanism unit 122, which is a moving mechanism (for example, an engine or a motor in the case of a moving body) or an operating mechanism (for example, an actuator such as a motor and a hydraulic actuator in the case of a device). Here, "operation" at least means that "the device changes its state according to an operation command by performing a specific operation (conforming to JIS B0132)". In the following description, for the sake of simplicity of description, the case where the edge system 108 is a moving body will be representatively described.
[0030] If the mechanism unit 122 is a moving mechanism, then, for example, force generation or force suppression components such as actuators (for example, motors and hydraulic actuators), brakes, and motors, and force transmission structures such as wheels, axles, belts, and gears can be conceived. The mechanism unit 122 can be another mechanism.
[0031] The edge system 108 has a communication control unit 109, a data communication network 110, a sensor unit 111, an identification calculation unit 112, a diagnostic control unit 113, and an actuator control unit 115.
[0032] The communication control unit 109 is a communication device connected to the data communication network 110 in the edge system 108, can be connected to the communication network 121, and enables communication between the devices in the edge system 108 and external devices. The communication between the communication control unit 109 and external devices is usually realized by wireless communication modules (such as Wi-Fi (registered trademark) modules and 5G communication modules). The wireless communication module does not have to be included in each component of the edge system 108. Alternatively, the edge system 108 can include a gateway device having a wireless communication module (such as an ECU, a smart phone, and a wireless router), and the communication processing related to the outside can be centralized in the gateway device.
[0033] The data communication network 110 is a vehicle-mounted network that is connected to the recognition computing unit 112, the actuator control unit 115, and the diagnostic control unit 113 in the edge system 108 and transmits data in the edge system 108.
[0034] The sensor unit 111 is a sensor that measures various types of data (e.g., speed, temperature, and current position) and outputs the data as an electrical signal. Conceived examples of the sensor unit 111 include devices such as GPS, fuel systems, speedometers, tachometers (for motors, engines, and wheels), distance meters (such as distance meters using light detection and ranging (LiDAR) or ultrasonic waves), position or displacement sensors, and angle detection sensors.
[0035] The recognition computing unit 112 and the actuator control unit 115 are edge-in controllers. The recognition computing unit 112 recognizes the electrical signal output from the sensor unit 111 and converts the signal into state information. The actuator control unit 115 controls actuators (not shown) arranged in various units of the edge system 108 including the mechanism unit 122 based on the state information acquired by the recognition computing unit 112. By operating the edge-in controller, the state of the hardware configured in the edge system 108 including the mechanism unit 122 and the sensor unit 111 is stored as the internal state of the edge-in controller. Examples of the edge-in controller include a vehicle electronic control unit (ECU), a drone controller, a programmable logic controller (PLC) in the industrial field, and an NC controller of a machine tool.
[0036] In the case where the edge system 108 is a vehicle and the edge-in controller is an ECU, the edge system 108 may include a plurality of edge-in controllers (lane keeping, inter-vehicle distance control, engine speed control, control of communication with the outside of the edge device 12) that perform different functions. Various functions can be assigned to a common edge-in controller. In the automotive industry, such a function is sometimes referred to as a "function" or "system function". How to have such a function can be applied to the case where the edge-in controller is not an ECU.
[0037] It is conceivable that the hardware configured in the edge-in controller is, for example, a central processing unit (CPU), a graphics processing unit (GPU), an application-specific integrated circuit (ASIC) for data processing, a bus, and a sensor. It is not necessary to have all the components of the hardware.
[0038] The in-edge controller is implemented by a software program (hereinafter sometimes referred to as a control program) executed by hardware configured in the in-edge controller. In the case of an in-edge controller having a speed maintenance function, the control program is a program that executes processes for sending engine throttle opening and closing instructions and motor acceleration and deceleration instructions, while performing a comparison between the speed (sensor data) measured by a speedometer, which is one of the sensor units 111, and a specified speed. The control program can be installed, updated, or parameter-updated with data received by the in-edge controller.
[0039] The in-edge controller is responsible for at least a part of the processing for realizing the automatic operation of the edge system 108, and thus tends to have an increase in complexity in terms of hardware and / or software. For example, examples of an increase in hardware complexity include cases where a GPU, a field-programmable gate array (FPGA), a dedicated neural network processor, and other machine learning acceleration hardware are included for introducing machine learning processing and introducing processing for real-time recognition and determination of data input from various sensors and cameras.
[0040] The diagnostic control unit 113 is a diagnostic controller that controls the diagnosis of the edge system 108. Physical resources such as a processor and a memory of the diagnostic controller are separate from the in-edge controller and are configured independently of the in-edge controller. By adopting this configuration, the processing load of the in-edge controller is reduced.
[0041] The diagnostic control unit 113 as the diagnostic controller, the recognition calculation unit 112 and the actuator control unit 115 as the in-edge controller are connected to the data communication network 110 and communicate via the data communication network 110. In the case where the edge system 108 is a vehicle, it can be considered that an on-board diagnostic generation 2 (OBD2) diagnostic machine (hereinafter also referred to as an "OBD2 diagnostic machine") can be connected to the data communication network 110 as an in-vehicle network via a connector. In the case where the recognition calculation unit 112 or the actuator control unit 115 is an ECU capable of communicating with the OBD2 diagnostic machine, the diagnostic control unit 113 can acquire information from the recognition calculation unit 112 or the actuator control unit 115 via the OBD2 diagnostic machine.
[0042] The diagnostic control unit 113 has a diagnostic data interface 116, an in-device communication processing unit 114, a diagnostic memory map 117, a sequence update processing unit 118, a diagnostic sequence control processing unit 119, and a sequence memory 120.
[0043] Figure 2 is a diagram showing the data configuration of the sequence memory in Example 1. In Example 1, a plurality of specifiable diagnostic sequences are stored in advance in the sequence memory 120 as a library. In Figure 2In the example, n sets of diagnostic sequences Seq01 - n are stored in the sequence memory 120. The diagnostic sequence set is definition information that defines a series of processes for acquiring the state data of the edge system 108.
[0044] In the diagnostic sequence set, for each state information acquired by the diagnostic sequence operating in each edge - in controller, it is set which state information to acquire and the acquisition timing. The timing is defined, for example, by the polling cycle.
[0045] For example, as a diagnostic sequence for performing in - vehicle network communication - related diagnosis, it can be thought that the edge - in controller performs communication on the data communication network 110, performs packet loss counting, and calculates the error rate per unit time. As a diagnostic sequence for performing microcomputer diagnosis, it can be thought that by performing an inter - core comparison of the processing results of multiple cores included in the CPU of the edge - in controller, it is determined whether there is a core abnormality. Since the result of the inter - core processing result comparison is stored in a register outside the core, the diagnostic control unit 113 reads the comparison result from the register at a predetermined cycle. Diagnostic sequences can also be thought of, such as the diagnosis of various sensors and memory checks.
[0046] The multiple diagnostic sequence sets stored in the sequence memory 120 have different settings, and the diagnostic sequence set applied to the edge system 108 can be updated by changing the specified diagnostic sequence set.
[0047] The diagnostic sequence control processing unit 119 specifies the diagnostic sequence to which the pointer is to be applied according to the specified diagnostic sequence set, and acquires state information indicating the state of the hardware of each unit configured in the edge system 108 (one of the internal states of the edge - in controller 10) from the recognition calculation unit 112 and the actuator control unit 115 via the diagnostic data interface 116.
[0048] The diagnostic sequence control processing unit 119 generates diagnostic data by mapping the state information acquired from each unit to the diagnostic memory map 117. The diagnostic sequence control processing unit 119 can acquire information (more specifically, the control program) indicating the state of the recognition calculation unit 112 and / or the actuator control unit 115 by monitoring the recognition calculation unit 112 and / or the actuator control unit 115, and include this information in the diagnostic data in the same way as the information indicating the internal state of the edge - in controller.
[0049] The in - device communication processing unit 114 sends the diagnostic data stored in the diagnostic memory map 117 to the diagnostic cloud server 104. The in - device communication processing unit 114 receives a notification of the diagnostic sequence or the diagnostic sequence set from the diagnostic cloud server 104 and delivers the notification to the sequence update processing unit 118.
[0050] The sequence update processing unit 118 updates the diagnostic sequence set on the sequence memory 120 based on the notified diagnostic sequence set, or updates a part of the diagnostic sequence set corresponding to the notified diagnostic sequence on the sequence memory 120 based on the notified diagnostic sequence. After the diagnostic sequence on the sequence memory 120 is updated, the diagnostic sequence set executed by the diagnostic sequence control processing unit 119 is the updated set.
[0051] <Manufacturing company server>
[0052] The manufacturing company server 101 has an edge function update content generation processing unit 102 and a function update instruction processing unit 103.
[0053] When updating the functions of the in-edge controller, the edge function update content generation processing unit 102 determines the update content.
[0054] The function update instruction processing unit 103 generates function update information including information about the update content determined by the edge function update content generation processing unit 102, and sends the function update information together with a function update instruction to the diagnostic cloud server 104.
[0055] <Diagnostic cloud server>
[0056] The diagnostic cloud server 104 manages the diagnosis content of the device management edge system and its updates, and has a status diagnosis processing unit 105, a factor analysis processing unit 106, and a diagnosis processing update instruction unit 107.
[0057] The status diagnosis processing unit 105 classifies the status information included in the diagnostic data received from the edge system 108 based on the importance according to its diagnostic code, and delivers the status information with a predetermined importance or higher to the factor analysis processing unit 106.
[0058] The factor analysis processing unit 106 performs factor analysis on the status information delivered from the status diagnosis processing unit 105, identifies what has happened and specific abnormal factors in the edge system 108, and notifies the analysis results to the diagnosis processing update instruction unit 107 and the manufacturing company server 101. The analysis results of the factor analysis are used for function update determination in the manufacturing company server 101.
[0059] Factor analysis can be, for example, rule-based abnormal factor identification based on status information. The analysis rule is information defining the chain relationship of abnormalities, that is, the chain relationship of abnormal states in which the causal relationship of abnormalities occurs in the chain. The analysis rule can be generated based on the design data 13 or the diagnostic model. Therefore, the analysis rule can be generated by the manufacturing company server 101 and sent to the factor analysis processing unit 106 of the diagnostic cloud server 104. The diagnostic cloud server 104 can generate the analysis rule by using the design data and the diagnostic model of the diagnostic cloud server 104 notified to the edge system 108 by the manufacturing company server 101.
[0060] The diagnostic process update instruction unit 107 determines, as needed, an update of each diagnostic sequence or a part of a set of diagnostic sequences based on the analysis result, and determines the type of status information acquired as diagnostic data after the update and the timing of acquiring the status information. The diagnostic process update instruction unit 107 sends a diagnostic update notification specifying the updated set of diagnostic sequences to the diagnostic control unit 113 of the edge system 108 to indicate the update of the set of diagnostic sequences.
[0061] The diagnostic process update instruction unit 107 determines, as needed, an update of each diagnostic sequence or a part of a set of diagnostic sequences based on the update of the functions of the edge controllers in the edge system 108 by the manufacturing company server 101, and determines the type of status information acquired as diagnostic data after the update and the timing of acquiring the status information. In this case, the diagnostic process update instruction unit 107 sends a diagnostic update notification specifying the updated set of diagnostic sequences to the diagnostic control unit 113 of the edge system 108 to indicate the update of the set of diagnostic sequences.
[0062] <Inter-device collaboration in a distributed system>
[0063] Figure 3 It is a sequence diagram showing the process flow of the set of diagnostic sequences in Update Example 1.
[0064] (Step S101) The edge system 108 is designed and manufactured by the manufacturing company using the manufacturing company server 101.
[0065] (Step S102) The edge system 108 manufactured by the manufacturing company is handed over to the user and starts operating. During the operation of the edge system 108, the identification calculation unit 112 performs status monitoring based on the sensor data input from the sensor unit 111.
[0066] (Step S103) When any abnormality occurs in the edge system 108, the diagnostic control unit 113 detects the occurrence of the abnormality. For example, when a communication error occurs in the edge system 108, the diagnostic control unit 113 detects the occurrence of the communication error. Other conceivable examples of abnormalities include disconnection of the cable between ECUs, occurrence of packet loss due to excessive communication on the data communication network 110, and scrambled memory data.
[0067] (Step S104) With the detection of the occurrence of the abnormality, the diagnostic control unit 113 generates diagnostic data by performing a diagnosis according to a set of diagnostic sequences and notifies the diagnostic cloud server 104 of the diagnostic data. When an abnormality actually occurs, multiple locations may become abnormal. In this case, the diagnostic code is notified to the diagnostic cloud server 104 as diagnostic data indicating the abnormalities at multiple locations through the diagnosis.
[0068] (Step S105) In the diagnostic cloud server 104, the status diagnosis processing unit 105 adds importance to the abnormal state indicated by the diagnostic code included in the diagnostic data and, if necessary, instructs the factor analysis processing unit 106 to perform factor analysis. The degree of importance of the diagnostic code can be predetermined based on the severity obtained from experience. Since the necessity for factor analysis is low, the diagnostic code that has been identified and resolved in the past is set to have a low importance.
[0069] (Step S106) Upon receiving the instruction, the factor analysis processing unit 106 performs abnormal factor identification by performing factor analysis, holds the analysis result including the abnormality and its factors as abnormal factor data, and notifies the manufacturing company server 101. In the factor analysis, the factor of which part of the edge system 108 is abnormal and how that part is abnormal are determined, for example, by a rule-based determination logic in the order starting from the diagnostic code with a high degree of importance. In another example, the factor determination may be limited to the diagnostic code with a certain degree of importance or higher. The notification to the manufacturing company server 101 can be a real-time process or a batch process.
[0070] (Step S107) In the manufacturing company server 101, the edge function update content generation processing unit 102 determines the content of the function update for improving the problems of the edge system 108 based on the analysis result notified from the diagnostic cloud server 104 and, if necessary, based on the determination of the designer. For example, function updates are performed on the control program for controlling the opening and closing amount of the throttle valve and the image processing program for performing image recognition such as white line recognition from the camera image for autonomous driving.
[0071] (Step S108) The function update instruction processing unit 103 sends function update information and function update content indicating that the function is to be updated to the edge system 108 and the diagnostic cloud server 104.
[0072] (Step S109) The edge system 108 receives the function update information, and the in-edge controller including the identification calculation unit 112 and the actuator control unit 115 performs function update based on the update data.
[0073] (Step S110) The diagnostic cloud server 104 receives the function update information. The sequence update processing unit 118 determines a diagnostic sequence corresponding to the function update based on the function update information and the abnormal factor data, where the abnormal factor data is the basis for the function update indicated in the function update information. A diagnostic update notification specifying a set of diagnostic sequences including the diagnostic sequence is sent to the edge system 108. A conceivable example of the content of the diagnostic update includes an increase in the frequency of obtaining status information related to the type of abnormal factor.
[0074] (Step S111) In the edge system 108, the sequence update processing unit 118 updates the applied set of diagnostic sequences by changing the specified destination of the pointer to the set of diagnostic sequences specified by the received diagnostic update notification.
[0075] If the function update in step S109 and the update of the set of diagnostic sequences in step S111 need to be synchronized, the updates are applied simultaneously. If synchronization is not required, the function and the set of diagnostic sequences can be updated sequentially. At this time, the function or the set of diagnostic sequences can be updated first.
[0076] With the update of the function and / or the set of diagnostic sequences, the edge system 108 continues to operate and monitor the status using the new function and / or the set of diagnostic sequences.
[0077] (Step S121) In the manufacturing company server 101, function improvements or additions that cannot be attributed to the results of the abnormal factor analysis can be performed. In this case, the process can also proceed to step S107 to perform the corresponding function update and diagnostic sequence update.
[0078] In step S107 in this case, the edge function update content generation processing unit 102 determines, as needed based on the determination of the designer, the function update content for the improvement or addition of the function aspect for the edge system 108.
[0079] <Hardware configuration of the server>
[0080] Figure 4FIG. is a diagram showing an example of the hardware configuration of a computer 400 configured in a server. The server referred to herein includes a manufacturing company server 101 and a diagnostic cloud server 104. A computer is a device, so a computer can be referred to as a computer device.
[0081] The computer 400 is configured to include a processor 401 such as a CPU, a memory 402 as a main memory device, an external memory device 403 such as a hard disk and a solid state drive (SSD), a voice output device 404 such as a speaker, a biometric information input device 405 such as a camera, a sight line input device and a microphone, an input device 406 such as a keyboard, a mouse and a touch panel, an output device 407 such as a display and a printer, a communication device 408 such as a network interface card (NIC), and a bus connecting these components. Not all of these components are essential.
[0082] The memory 402 is, for example, a memory such as a random access memory (RAM).
[0083] The external memory device 403 is a non-volatile memory device capable of storing digital information, and examples thereof include a so-called hard disk, an SSD, and a flash memory.
[0084] The communication device 408 is a wired communication device that performs wired communication via a network cable or a wireless communication device that performs wireless communication via an antenna. The communication device 408 communicates with another device connected to the same network. Although packet communication via the Transmission Control Protocol / Internet Protocol (TCP / IP) is used for communication, the communication is not limited thereto, and communication via another protocol such as the User Datagram Protocol (UDP) can be used.
[0085] The communication device 408 implements a communication unit (not shown) that is communicably connected to a local area network (LAN) or the like.
[0086] Although the above is an example of the hardware configuration of the computer 400 configured in the server in the present embodiment, the configuration of the computer 400 is not limited thereto, and the computer 400 can be configured using other hardware. The computer 400 can be various information processing devices such as a server computer, a personal computer, a laptop personal computer, a tablet device, a smart phone, and a television device.
[0087] The computer 400 may have known programs (not shown) such as an operating system (OS), middleware, and applications. Such programs are executed by the processor 401 similarly to other programs, and as a result, the computer 400 performs predetermined processing. Components described by the name of "unit" in each server of this specification can be implemented by the above programs. The processor 401 is not limited to a CPU and can be implemented by another processor such as a GPU and an FPGA.
[0088] Due to the result of technologies such as virtualization, the functional boundary between the memory 402 and the external memory device 403 is blurred. Therefore, as long as storage resources can be used, strict distinction is not required. The concept including a processor, storage resources, and a communication device 408 is sometimes referred to as cloud resources. The cloud can be regarded as a data center as a whole. In this case, network switches, routers, data center power supplies, and cooling devices can also be regarded as part of cloud resources. The computer 400 can be a virtual entity such as a virtual machine, where the hardware of the physical computer 400 is virtualized.
[0089] The input device and the output device can be omitted in a computer for a server such as a Web server. In this case, the input from a client (client computer) connected to the server computer is performed by the input device of another computer, and the client computer used by the computer for the server receives the input as input data using the communication device 408. Similarly, the computer for the server uses the communication device 408 to send the data to be output to the client computer and performs the output to the output device of the client computer using the output data. Regardless of the presence or absence of the input device and the output device, the common point is that the input data is received and the output processing is performed by a program executed by the computer used by the server. In a Web application using HyperText Markup Language (HTML) and JavaScript, the text to be displayed on the output device is generated by executing HTML and JavaScript on the client computer that executes a web browser. In this case, "output processing" includes the transmission processing of HTML data and JavaScript data by a Web server program executed by the computer used for the Web server.
[0090] [Example 2]
[0091] In Example 2, the configuration for updating the edge system capable of automatic operation of diagnostics will be described as in Example 1. The distributed system of Example 2 is similar to the distributed system of Example 1 in its basic configuration. However, different from the distributed system of Example 1, the distributed system of Example 2 has the function of performing a simulation test of a set of diagnostic sequences on the diagnostic cloud server. Additionally, different from the distributed system of Example 1, the distributed system of Example 2 can add a new set of diagnostic sequences from the diagnostic cloud server to the diagnostic control unit of the edge system.
[0092] Figure 5 is a block diagram of the distributed system according to Example 2. In Example 2, the diagnostic cloud server and the diagnostic control unit in the edge system are different from the diagnostic cloud server and the diagnostic control unit of Example 1.
[0093] Referring to Figure 5 , the diagnostic cloud server 200 according to Example 2 has a status diagnosis processing unit 105, a factor analysis processing unit 106, a diagnostic sequence creation processing unit 201, a diagnostic sequence simulation unit 202, a diagnostic sequence storage memory 203, and a diagnostic processing update instruction unit 204. The status diagnosis processing unit 105 and the factor analysis processing unit 106 are the same as those in Example 1.
[0094] Referring to Figure 5 , the diagnostic control unit 205 according to Example 2 has an in-device communication processing unit 114, a diagnostic data interface 116, a diagnostic memory map 117, a diagnostic sequence control processing unit 119, a sequence update processing unit 206, and a sequence memory 207. The in-device communication processing unit 114, the diagnostic data interface 116, the diagnostic memory map 117, and the diagnostic sequence control processing unit 119 are similar to those in Example 1.
[0095] The diagnostic sequence generation processing unit 201 determines, as needed, the update of each diagnostic sequence or the update of a part of the diagnostic sequence according to the update of the functions of the in-edge controllers in the edge system 108 by the manufacturing company server 101. The diagnostic sequence creation processing unit 201 determines the type of status information to be acquired as the updated diagnostic data and the timing at which the status information should be acquired, and creates an updated set of diagnostic sequences based on the type and timing of the status information.
[0096] In the diagnostic cloud server 200, the data configuration of the sequence memory 207 is different from the data configuration of Example 1.
[0097] Figure 6FIG. is a diagram showing the data configuration of the sequence memory 207 in Example 2. In Example 2, a plurality of specifiable diagnostic sequence sets Seq01-n are pre-stored in the sequence memory 120, and there is a free area where a new diagnostic sequence set SeqE can be additionally stored. The free area can also be set to the configuration of the sequence memory 207 in Example 1, and then a new diagnostic sequence can be written from the diagnostic cloud server 104.
[0098] The diagnostic sequence simulation unit 202 simulates the recognition calculation unit 112 and the actuator control unit 115 of the edge system 108 and performs a simulation test of the updated diagnostic sequence set. At this time, the diagnostic sequence simulation unit 202 confirms that, for example, state information of a desired type is acquired at a desired timing with respect to the updated diagnostic sequence set.
[0099] In the case where a software program (hereinafter, also referred to as a function program) for implementing an updated function is applied to the recognition calculation unit 112 or the actuator control unit 115 for the function to be updated, the function program can be sent from the manufacturing company server 101 to the diagnostic cloud server 104, thereby simulating the recognition calculation unit 112 or the actuator control unit 115. In this case, the diagnostic cloud server 104 can simulate the recognition calculation unit 112 or the actuator control unit 115 based on the received function program.
[0100] In the case of a normal simulation test result, the diagnostic sequence simulation unit 202 stores the data set of the tested diagnostic sequence in the diagnostic sequence memory 203.
[0101] The diagnostic process update instruction unit 204 instructs the update of the diagnostic sequence set by sending the updated diagnostic sequence set stored in the diagnostic sequence storage memory 203 and a diagnostic update notification specifying the updated diagnostic sequence set to the diagnostic control unit 205 of the edge system 108.
[0102] In the diagnostic control unit 205 of the edge system 108, the sequence update processing unit 206 stores the updated diagnostic sequence set in the free area of the sequence memory 207 and changes the specified destination to the updated diagnostic sequence set when a diagnostic sequence set update instruction is received from the diagnostic cloud server 200.
[0103] The above example includes the following items. The items included in the above example are not limited to the following items.
[0104] (Item 1)
[0105] A distributed system, comprising:
[0106] An edge system, which is a mobile body or device capable of automatic operation; and
[0107] A diagnostic data computer capable of communicating with the edge system, wherein
[0108] the edge system has a mechanism unit for operation, an in-edge controller for controlling the mechanism unit, and a diagnostic controller capable of communicating with the in-edge controller via a vehicle network,
[0109] the diagnostic controller:
[0110] obtains diagnostic data according to a first set of diagnostic sequences, the first set of diagnostic sequences indicating a process of diagnosing the in-edge controller by one or more diagnostic sequences defining information types and the timing of obtaining diagnostic data indicating the internal state of the in-edge controller, and
[0111] sends the obtained diagnostic data to the diagnostic data computer,
[0112] the diagnostic data computer:
[0113] determines the information type and the timing to obtain diagnostic data as diagnostic data from the in-edge controller based on the received diagnostic data, and
[0114] sends a diagnostic update notification updated to a second set of diagnostic sequences to the diagnostic controller, the second set of diagnostic sequences including diagnostic sequences defining the determined information type and timing, and
[0115] the diagnostic controller:
[0116] performs an update from the first set of diagnostic sequences to the second set of diagnostic sequences,
[0117] obtains diagnostic data according to the second set of diagnostic sequences, and
[0118] sends the obtained diagnostic data to the diagnostic data computer.
[0119] Accordingly, the diagnostic quality can be improved by updating the set of diagnostic sequences based on diagnostic data, and the load on the vehicle-mounted device can be reduced by providing the diagnostic controller separately from the in-edge controller.
[0120] (Item 2)
[0121] According to the distributed system described in Item 1, the distributed system further includes a computer of a manufacturing company owned by the company that manufactures the edge system, the computer being capable of communicating with the diagnostic data computer, wherein,
[0122] the computer of the manufacturing company:
[0123] Generate function update information for updating the functions of the in-edge controller, and
[0124] Send the function update information to the in-edge controller and the diagnostic data computer,
[0125] The in-edge controller performs function updates according to the function update information,
[0126] The diagnostic data computer:
[0127] Based on the function update information, determine the information type and the timing for obtaining diagnostic data from the in-edge controller, and
[0128] Send a diagnostic update notification for the third diagnostic sequence set to the diagnostic controller, where the second diagnostic sequence set includes diagnostic sequences defining the determined information type and timing, and
[0129] The diagnostic controller:
[0130] Perform the change from the first diagnostic sequence set to the third diagnostic sequence set and obtain diagnostic data.
[0131] Accordingly, diagnostics matching the updated functions of the in-edge controller can be performed through the update of the diagnostic sequence set based on the function update information.
[0132] (Item 3)
[0133] According to the distributed system described in item 2, wherein,
[0134] The diagnostic data computer:
[0135] Perform factor analysis processing on the state of the in-edge controller based on the diagnostic data, and
[0136] Send the factor analysis result data obtained through the factor analysis processing to the computer for the manufacturing company, and
[0137] The computer for the manufacturing company generates function update information based on the factor analysis result data.
[0138] Accordingly, the functions of the in-edge controller are updated based on the results of the factor analysis, and the diagnostic sequence set is updated based on the function update information, so that diagnostics matching the updated functions of the in-edge controller can be performed.
[0139] (Item 4)
[0140] The distributed system according to Item 1, wherein, after performing the simulation test of the second diagnostic sequence set, the diagnostic data computer sends a diagnostic update notification for the second diagnostic sequence set to the diagnostic controller.
[0141] Accordingly, a simulation test of the diagnostic sequence set is performed and then applied to the edge system, so that the diagnostic sequence set can be safely updated.
[0142] (Item 5)
[0143] The distributed system according to Item 1, wherein the diagnostic controller:
[0144] includes a sequence memory that stores data of a plurality of diagnostic sequence sets including the first diagnostic sequence set and the second diagnostic sequence set in a specifiable manner, and
[0145] performs a change from the first diagnostic sequence set to the second diagnostic sequence set by changing the specified destination in the sequence memory.
[0146] Accordingly, a plurality of diagnostic sequence sets are preset, and the diagnostic sequence set to be used can be specified by a pointer, so that the diagnostic sequence set can be easily updated.
[0147] (Item 6)
[0148] The distributed system according to Item 5, wherein
[0149] the sequence memory has a free area where a diagnostic sequence set can be added,
[0150] the diagnostic data computer sends a diagnostic update notification for a fourth diagnostic sequence set to the diagnostic controller, the fourth diagnostic sequence set includes a diagnostic sequence that defines the determined information type and timing and is not stored in the sequence memory, and
[0151] the diagnostic controller:
[0152] records the data of the fourth diagnostic sequence set in the free area, and,
[0153] performs a change from the first diagnostic sequence set to the fourth diagnostic sequence set by changing the specified destination in the sequence memory.
[0154] Accordingly, an update of a diagnostic sequence set that is not pre-stored in the sequence memory can be performed.
[0155] (Item 7)
[0156] The distributed system according to Item 1, wherein
[0157] The edge system is an automobile, and
[0158] The edge inner controller is an electronic control unit.
[0159] Thereby, it is possible to reduce the load on the automotive ECU with low processing power caused by diagnostic execution.
[0160] The above examples are for describing the present invention and are not intended to limit the scope of the present invention to the examples. Without departing from the scope of the present invention, those skilled in the art can implement the present invention in various other aspects.
Claims
1. A distributed system, which comprises: An edge system, which is a mobile body or device capable of automatic operation; And A diagnostic data computer, which can communicate with the edge system, wherein The edge system has a mechanism unit for operation, an in-edge controller for controlling the mechanism unit, and a diagnostic controller capable of communicating with the in-edge controller via a vehicle network, The diagnostic controller: Obtains diagnostic data according to a first set of diagnostic sequences, the first set of diagnostic sequences indicating a process of diagnosing the in-edge controller through one or more diagnostic sequences, the one or more diagnostic sequences defining the type and timing of information obtained as diagnostic data indicating the internal state of the in-edge controller, and Sends the obtained diagnostic data to the diagnostic data computer, The diagnostic data computer: Based on the received diagnostic data, determines the type and timing of information to be obtained as diagnostic data from the in-edge controller, and Sends a diagnostic update notification for a second set of diagnostic sequences to the diagnostic controller, the second set of diagnostic sequences including diagnostic sequences defining the determined type and timing of information, and The diagnostic controller: Performs an update from the first set of diagnostic sequences to the second set of diagnostic sequences, Obtains diagnostic data according to the second set of diagnostic sequences, and Sends the obtained diagnostic data to the diagnostic data computer; Wherein, when executing the first set of diagnostic sequences and the second set of diagnostic sequences for vehicle network communication-related diagnosis, the in-edge controller performs communication on a data communication network, performs packet loss counting, and calculates an error rate per unit time; Or, When executing the first set of diagnostic sequences and the second set of diagnostic sequences for microcomputer diagnosis, it is determined whether there is a core abnormality by inter-core comparison of the processing results of multiple cores included in the CPU of the in-edge controller.
2. The distributed system according to claim 1, the distributed system further comprising a computer of a manufacturing company owned by the company manufacturing the edge system, the computer being able to communicate with the diagnostic data computer, Wherein, The computer of the manufacturing company: Generates function update information for updating the function of the in-edge controller, and Sends the function update information to the in-edge controller and the diagnostic data computer, The in-edge controller performs function update according to the function update information, The diagnostic data computer: Based on the function update information, determines the type and timing of information to be obtained as diagnostic data from the in-edge controller, and Sends a diagnostic update notification for a third set of diagnostic sequences to the diagnostic controller, the third set of diagnostic sequences including diagnostic sequences defining the determined type and timing of information, and The diagnostic controller: Performs a change from the first set of diagnostic sequences to the third set of diagnostic sequences and obtains diagnostic data.
3. The distributed system according to claim 2, wherein The diagnostic data computer: Perform factor analysis processing on the state of the in-edge controller based on the diagnostic data, and Send the factor analysis result data obtained through the factor analysis processing to a computer for a manufacturing company, and The computer for the manufacturing company generates function update information based on the factor analysis result data.
4. The distributed system according to claim 1, wherein, After performing the simulation test of the second diagnostic sequence set, the diagnostic data computer sends a diagnostic update notification for the second diagnostic sequence set to the diagnostic controller.
5. The distributed system according to claim 1, wherein, The diagnostic controller: Includes a sequence memory that stores data of a plurality of diagnostic sequence sets including the first diagnostic sequence set and the second diagnostic sequence set in a specifiable manner, and Performs a change from the first diagnostic sequence set to the second diagnostic sequence set by changing the specified destination in the sequence memory.
6. The distributed system according to claim 5, wherein, The sequence memory has a free area capable of adding a diagnostic sequence set, The diagnostic data computer sends a diagnostic update notification for a fourth diagnostic sequence set to the diagnostic controller, the fourth diagnostic sequence set includes a diagnostic sequence defining the determined information type and timing, and the fourth diagnostic sequence set is not stored in the sequence memory, and The diagnostic controller: Records the data of the fourth diagnostic sequence set in the free area, and, Performs a change from the first diagnostic sequence set to the fourth diagnostic sequence set by changing the specified destination in the sequence memory.
7. The distributed system according to claim 1, wherein, The edge system is an automobile, and The in-edge controller is an electronic control unit.
8. A diagnostic method for diagnosing an edge system in a distributed system, the distributed system including an edge system that is a mobile body or device capable of automatic operation and a diagnostic data computer capable of communicating with the edge system, the edge system having a mechanism unit for operation, an in-edge controller for controlling the mechanism unit, and a diagnostic controller capable of communicating with the in-edge controller via a vehicle-mounted network, wherein, The diagnostic controller: Obtains diagnostic data according to a first diagnostic sequence set, the first diagnostic sequence set indicates a process of diagnosing the in-edge controller through one or more diagnostic sequences, and the one or more diagnostic sequences define the information type and timing of the information obtained as diagnostic data indicating the internal state of the in-edge controller, and Sends the obtained diagnostic data to the diagnostic data computer, The diagnostic data computer: Determines the information type and timing of the information to be obtained as diagnostic data from the in-edge controller based on the received diagnostic data, and Sends an updated diagnostic update notification for a second diagnostic sequence set to the diagnostic controller, the second diagnostic sequence set includes a diagnostic sequence defining the determined information type and timing, and The diagnostic controller: Performs an update from the first diagnostic sequence set to the second diagnostic sequence set, Obtain diagnostic data according to the second diagnostic sequence set, and send the obtained diagnostic data to the diagnostic data computer; wherein, when executing the first diagnostic sequence set and the second diagnostic sequence set for in-vehicle network communication related diagnosis, the in-edge controller performs communication on the data communication network, performs packet loss counting, and calculates the error rate per unit time; or, when executing the first diagnostic sequence set and the second diagnostic sequence set for microcomputer diagnosis, determine whether there is a core abnormality by inter-core comparison of the processing results of multiple cores included in the CPU of the in-edge controller.
Citation Information
Patent Citations
A system for diagnosing components inside a vehicle.
JP2014517378A
Abnormality analysis system for vehicle and abnormality analysis method for vehicle
US20100057292A1
System For Diagnosing Faults of a Component in a Vehicle
US20140100737A1
Unknown on-board diagnostics (OBD) protocol interpreter and conversion system
US20160253849A1
Software management system, gateway device, maintenance device, server device, and control method for software management system
US20190325666A1