Electronic control device and moving body state estimation system
The electronic control device on mobile bodies collects and transmits program counter data for state estimation, enabling accurate diagnosis of malfunctions and abnormalities through data aggregation and analysis.
Patent Information
- Application Number
- JP2024102362
- Authority / Receiving Office
- JP · JP
- Patent Type
- Applications
- Current Assignee / Owner
- Filing Date
- 2024-06-25
- Publication Date
- 2026-01-14
AI Technical Summary
Existing electronic control devices on mobile bodies lack a simple and effective mechanism to collect and transmit information for estimating their state, which is crucial for diagnosing malfunctions.
An electronic control device mounted on a moving body that samples and records program counter address values, transmitting this data to an analysis device for state estimation, using a processor, ring buffer, recording device, and communication device to facilitate data aggregation and analysis.
Enables accurate estimation of the moving body's state by correlating instruction execution with address values, allowing for timely identification of abnormalities and their causes.
Smart Images

Figure 2026004121000001_ABST
Abstract
Description
[Technical Field]
[0001] The present disclosure relates to an electronic control device that is mounted on a moving body and collects information for estimating the state of the moving body and transmits it to an analysis device, and a moving body state estimation system that estimates the state of the moving body based on the information transmitted from the electronic control device. [Background technology]
[0002] For example, Patent Document 1 describes an information processing device capable of recording an operation log. The information processing device of Patent Document 1 records an operation log before and after a malfunction occurs in the device. Furthermore, in view of the fact that an initial operation log immediately after the device is installed at a customer's site is useful for identifying malfunctions in the device, the information processing device of Patent Document 1 is configured to be able to store log information for an initial period after the device is installed. [Prior art documents] [Patent documents]
[0003] [Patent Document 1] Japanese Patent Publication No. 2020-88806 Summary of the Invention [Problem to be solved by the invention]
[0004] The information processing device of Patent Document 1 is targeted at a fax machine, a printer, a scanner, or a multifunction device thereof, etc. In other words, the information processing device of Patent Document 1 is installed and used in a specific location.
[0005] Here, if a malfunction occurs in an electronic control device that is mounted on a mobile body and controls various controlled devices of the mobile body in order to control the state of the mobile body, information about the state of the mobile body can also be useful in investigating the cause of the malfunction.
[0006] The present disclosure has been made in consideration of the above-mentioned points, and aims to provide an electronic control device that is capable of collecting information for estimating the state of a moving body and transmitting the information to an analysis device with a simple configuration, and a moving body state estimation system that estimates the state of the moving body based on the information transmitted from the electronic control device. [Means for solving the problem]
[0007] In order to achieve the above object, an electronic control device according to the present disclosure is an electronic control device that is mounted on a moving body, collects information for estimating a state of the moving body, and transmits the information to an analysis device (40), a processor (14, 16) for executing a control program including a plurality of instructions stored in a memory (22) to control the state of the vehicle; a program counter (18, 20) that indicates an address value of a memory in which an instruction to be executed by the processor is stored; a ring buffer (26, 28) that samples the address value indicated by the program counter and stores the latest certain number of address values as sampling data; a recording device (30) that records the sampling data stored in the ring buffer as information for estimating the state of the moving object in response to a recording request; and a communication device (32) that transmits the sampling data recorded in the recording device to the analysis device.
[0008] As described above, the electronic control device is configured to transmit sampling data obtained by sampling address values indicated by the program counter to the analysis device as information for estimating the state of the mobile object. A control program for controlling the state of the mobile object executes instructions according to the state of the mobile object, so there is a correlation between the state of the mobile object, the instructions to be executed, and the address values where those instructions are stored. Therefore, the sampling data obtained by sampling address values indicated by the program counter can be used as information for estimating the state of the mobile object.
[0009] In this way, the electronic control device according to the present disclosure can collect information for estimating the state of a moving body with a simple configuration that simply records sampling data obtained by sampling the address value indicated by the program counter.
[0010] Furthermore, the moving body state estimation system according to the present disclosure includes: The electronic control device (10), The system has an analysis device (40) that aggregates the occurrence frequency of address values for each address section for sampling data transmitted from the electronic control device, generates operating point data having multiple address sections as elements, and estimates the state of the moving body based on the generated operating point data.
[0011] As described above, the analysis device aggregates the occurrence frequency of address values for each address interval to generate operation point data having multiple address intervals as elements. As a result, the operation point data indicates the frequency with which commands corresponding to address values included in each address interval were executed during the period in which sampling data was obtained. Therefore, the analysis device can estimate the state of the moving object with high accuracy based on the operation point data.
[0012] The reference numbers in parentheses above merely indicate an example of a correspondence with specific configurations in the embodiments described below, in order to facilitate understanding of the present disclosure, and are not intended to limit the scope of the present disclosure in any way.
[0013] Furthermore, the technical features of the present disclosure other than those described above will become apparent from the following description of the embodiments and the accompanying drawings. [Brief explanation of the drawings]
[0014] [Figure 1] 1 is a diagram illustrating an example of the configuration of an electronic control device and a moving body state estimation system according to an embodiment; [Figure 2]5 is a flowchart showing an example of a process for recording sampling data in an external memory in an electronic control device. [Figure 3] 10 is a flowchart showing an example of a process for transmitting sampling data to an analysis device in an electronic control device. [Figure 4] 10 is a flowchart illustrating an example of processing for estimating the state of a moving object based on sampling data in an analysis device. [Figure 5] FIG. 10 is an explanatory diagram for explaining operation point data. [Figure 6] This figure shows an example of the results of generating operating point data from sampling data including multiple address values sampled in each state, such as "driving on rough roads," "normal driving," and "sudden stop," when the moving body is a vehicle, and plotting the generated operating point data in operating point space. DETAILED DESCRIPTION OF THE INVENTION
[0015] Hereinafter, embodiments of an electronic control device and a mobile object state estimation system according to the present disclosure will be described with reference to the drawings. However, the present disclosure is not limited to the following embodiments, and various modifications described below are also included within the technical scope of the present disclosure. Furthermore, in addition to the following, various modifications can be implemented without departing from the spirit of the present disclosure. The embodiments and various modifications can be implemented in appropriate combinations as long as no technical contradictions arise. In the following description, identical or similar components may be assigned the same reference numbers across multiple drawings, and descriptions thereof may be omitted. Furthermore, when only a portion of a component is mentioned, descriptions provided elsewhere may apply to the other components.
[0016] (First embodiment) Fig. 1 shows an example of the configuration of an electronic control unit (hereinafter referred to as ECU) 10 according to this embodiment and a moving object state estimation system 100. As shown in Fig. 1, the moving object state estimation system 100 includes the ECU 10 and an analysis device 40. Note that while Fig. 1 shows an example in which the analysis device 40 is provided outside the ECU 10, the analysis device 40 may also be provided inside the ECU 10.
[0017] The ECU 10 is configured to be mountable on, for example, a mobile body, such as an engine-driven vehicle, a hybrid vehicle, an electric vehicle, or a fuel cell vehicle, an air vehicle such as an electric vertical take-off and landing aircraft or a drone, a ship, a construction machine, or an agricultural machine.
[0018] 1, the ECU 10 includes a microcomputer 12, an external memory 30, and a communication IC 32. The microcomputer 12 includes multiple cores that function as processors, namely, a first core 14 to an n-th core 16. However, the number of cores may be one, not multiple. Each of the first core 14 to the n-th core 16 includes a program counter 18, 20.
[0019] The microcomputer 12 has an internal memory 22 that includes a nonvolatile memory and a volatile memory. The nonvolatile memory of the internal memory 22 stores a control program for the ECU 10 to control the state of the mobile object by controlling control target devices (e.g., a drive device, a braking device, a steering device, etc.) provided in the mobile object. The control program includes a plurality of instructions. Each of the plurality of instructions is stored in an address space of the nonvolatile memory of the internal memory 22 and can be identified by an address value.
[0020] The program counters 18, 20 are registers that indicate the address value of a memory area storing an instruction to be executed next by the corresponding first core 14 to n-th core 16. The first core 14 to n-th core 16 each reads and executes the instruction indicated by the address value of the program counters 18, 20 from the internal memory 22. The address values of the program counters 18, 20 are updated as the corresponding first core 14 to n-th core 16 reads an instruction.
[0021] The microcomputer 12 has a ring buffer unit 24. The ring buffer unit 24 includes ring buffers 26, 28 respectively associated with the program counters 18, 20 of the first core 14 to the n-th core 16. The ring buffers 26, 28 sample address values indicated by the corresponding program counters 18, 20, for example, at a predetermined cycle, and store the sampled data.
[0022] Each of the ring buffers 26, 28 has a finite storage capacity. When the ring buffers 26, 28 store a quantity of address values equivalent to the storage capacity and sample a new address value, the oldest address value is overwritten with the new address value, thereby storing a fixed number of the most recent address values. Therefore, each of the ring buffers 26, 28 always stores a fixed number of address values corresponding to a fixed number of the most recent instructions executed by the first core 14 to the nth core 16. Note that if the sampling period of the ring buffers 26, 28 is longer than the instruction execution period of the first core 14 to the nth core 16, not all address values may necessarily be sampled, and sampling may be missed.
[0023] In response to the occurrence of a recording request, the external memory 30 records and saves the sampling data stored in each of the ring buffers 26, 28. For example, when a recording request is generated, the external memory 30 records the sampling data stored in each of the ring buffers 26, 28. Furthermore, after a certain time has elapsed since the occurrence of the recording request (for example, the time required for all sampling data stored in the ring buffers 26, 28 to be updated with the sampling data after the occurrence of the recording request), the external memory 30 again records and saves the sampling data stored in each of the ring buffers 26, 28. In this way, the external memory 30 can save sampling data equivalent to the storage capacities of the ring buffers 26, 28 before and after the recording request.
[0024] Alternatively, the external memory 30 may record and save the sampling data stored in each of the ring buffers 26, 28 after a predetermined time has elapsed since the recording request was issued (a time shorter than the time required for all sampling data stored in the ring buffers 26, 28 to be updated with the sampling data after the recording request was issued). In this case, the external memory 30 can also save sampling data from before to after the recording request.
[0025] The recording request may be issued by the microcomputer 12 or another microcomputer that detects an abnormality in the mobile object when the abnormality occurs. Abnormalities in the mobile object include an accident involving the mobile object and an abnormality occurring in the control of various control target devices in the mobile object. Furthermore, when an abnormality occurs in the mobile object and sampling data is stored, the external memory 30 preferably also records the nature of the abnormality in the mobile object in association with the stored sampling data. This makes it easier to later determine the cause of the abnormality in the mobile object based on the results of the estimation of the state of the mobile object by the analysis device 40.
[0026] The recording request may be issued when the state of the mobile object satisfies a specific condition. For example, the microcomputer 12 or another microcomputer may determine that a specific condition is satisfied and issue a recording request when the mobile object is in an abnormal state even though no obvious abnormality has occurred, such as when the mobile object remains stopped for a predetermined time or longer despite being in a movable state, or when the vehicle speed of an engine-driven vehicle is below a predetermined speed despite the engine speed being above a predetermined speed.
[0027] The recording request may also be issued in response to an external request. External requests include, for example, a request from a data center where the analysis device 40 is installed or a request from a user who is a passenger of the vehicle. For example, the data center can issue a recording request when it determines that information about the state of the vehicle is needed, such as during specific weather conditions, specific traffic conditions, or when a disaster occurs. Furthermore, for example, a user of the vehicle can request the recording of information for analyzing the state of the vehicle by operating a button or issuing a voice command when, for example, they sense something unusual about the behavior of the vehicle.
[0028] Furthermore, the recording request may be issued randomly or at regular intervals when the mobile object is operating normally. By collecting a large amount of sampling data when the mobile object is operating normally, it is possible to determine that some kind of abnormality may be occurring in the mobile object when sampling data that is significantly different from the collected normal sampling data is collected.
[0029] In response to a communication request, the communication IC 32 transmits the sampling data stored in the external memory 30 to a data center where the analysis device 40 is installed. A communication request may be generated by an instruction from an inspection tool with a communication function, for example, during inspection of a mobile object. Furthermore, for example, when transmitting the sampling data stored in the external memory 30 to the data center in real time, the communication IC 32 may consider the occurrence of a communication request based on the recording of the sampling data in the external memory 30 and transmit the sampling data. Alternatively, the communication IC 32 may report to the data center that the sampling data has been recorded in the external memory 30, and may consider the occurrence of a communication request based on receiving a communication request from the data center based on the report and transmit the sampling data.
[0030] The analysis device 40 is installed in, for example, a data center as described above. The analysis device 40 aggregates the occurrence frequency of address values for each address section in the sampling data transmitted from the ECU 10, and generates operating point data having multiple address sections as elements. The analysis device 40 then estimates the state of the moving object based on the generated operating point data.
[0031] A control program for controlling the state of a mobile object executes various commands according to the state of the mobile object. Therefore, a correlation is generated between the state of the mobile object, the multiple commands to be executed, and the address values at which those commands are stored. Therefore, sampling data obtained by sampling the address values of the executed commands can be used as information for estimating the state of the mobile object. Therefore, the analysis device 40 can estimate the state of the mobile object based on operating point data generated from the sampling data. The method used by the analysis device 40 to estimate the state of the mobile object based on operating point data will be described in detail later with reference to a flowchart.
[0032] Next, the processing executed by the ECU 10 and the analysis device 40 will be described in detail with reference to flowcharts. First, the processing executed by the ECU 10 for recording sampling data, which is information for estimating the state of a moving body, in the external memory 30 will be described. Fig. 2 is a flowchart showing an example of the processing executed by the ECU 10 for recording sampling data in the external memory 30. The processing shown in the flowchart of Fig. 2 is started when the ECU 10 starts operating.
[0033] In the first step S100, the microcomputer 12 starts sampling of address values indicated by each of the program counters 18 and 20 by the ring buffer unit 24. As a result, a certain number of the latest address values corresponding to the multiple instructions most recently executed by each of the first core 14 to the n-th core 16 are stored as sampled data in each of the ring buffers 26 and 28.
[0034] In step S110, the microcomputer 12 determines whether a request to record sampling data has occurred. If it is determined that a request to record sampling data has occurred, the microcomputer 12 proceeds to step S120. On the other hand, if it is determined that a request to record sampling data has not occurred, the microcomputer 12 skips step S120 and proceeds to step S130.
[0035] In step S120, in response to the issuance of the recording request, the microcomputer 12 records and saves the sampling data spanning before and after the recording request in the external memory 30. In step S130, the microcomputer 12 determines whether the operation of the moving object has stopped (for example, in the case of a vehicle, the main switch has been turned off) and the ECU 10 has stopped operating. If it is determined that the ECU 10 has stopped operating, the microcomputer 12 proceeds to the processing of step S140. On the other hand, if it is determined that the ECU 10 has not stopped operating, the microcomputer 12 returns to the processing of step S110. In step S140, the microcomputer 12 ends the sampling of the address values indicated by the program counters 18 and 20 by the ring buffer unit 24, and ends the processing shown in the flowchart of FIG. 2.
[0036] Next, a process in the ECU 10 for transmitting the sampling data recorded in the external memory 30 to the analysis device 40 will be described. Fig. 3 is a flowchart showing an example of a process in the ECU 10 for transmitting the sampling data to the analysis device 40. The process shown in the flowchart in Fig. 3 is periodically executed while the ECU 10 continues to operate.
[0037] In step S200, the microcomputer 12 determines whether or not a communication request has been generated for the sampling data recorded in the external memory 30. If it is determined that a communication request has been generated, the microcomputer 12 proceeds to processing in step S210. On the other hand, if it is determined that a communication request has not been generated, the microcomputer 12 ends the processing shown in the flowchart of FIG.
[0038] In step S210, the microcomputer 12 transmits the sampling data recorded in the external memory 30 to the analysis device 40 via the communication IC 32. In step S220, the microcomputer 12 determines whether the vehicle has stopped operating and the ECU 10 has stopped operating. If it is determined that the ECU 10 has stopped operating, the microcomputer 12 ends the processing shown in the flowchart of Fig. 3. On the other hand, if it is determined that the ECU 10 has not stopped operating, the microcomputer 12 returns to the processing of step S200.
[0039] Next, a description will be given of a process performed by the analysis device 40 to estimate the state of the moving body based on the sampling data transmitted from the ECU 10. Fig. 4 is a flowchart showing an example of a process performed by the analysis device 40 to estimate the state of the moving body based on the sampling data.
[0040] In the first step S300, the analysis device 40 receives sampling data transmitted from the ECU 10. Then, in step S310, the analysis device 40 converts the received sampling data into operating point data. Specifically, the analysis device 40 converts the sampling data into operating point data by tallying up the occurrence frequency of address values for each address interval for the received sampling data and generating operating point data having multiple address intervals as elements.
[0041] The address range can be defined to include at least one address value. If the address range includes only one address value, the occurrence frequency of the address value is tallied for each address value, as shown in FIG. 5. In this case, each address value becomes an element of the operating point data. In this way, the sampling data obtained by sampling the address values of the program counters 18 and 20 can be converted into operating point data.
[0042] An address range may be defined to include multiple adjacent address values. For example, as shown in FIG. 5, multiple instructions constituting a function or other feature are often stored in multiple adjacent addresses. Therefore, by defining an address range to include multiple adjacent address values, even if it is not possible to sample all address values of the program counters 18 and 20, the address range can be defined to cover all address values indicating the executed features. As a result, the operating point data, which includes each address range as an element, can accurately indicate how frequently each feature was executed. Note that the number of address values included in an address range may be constant or may vary across all address ranges. Furthermore, when an address range is defined to include multiple adjacent address values, the occurrence frequencies of all address values included in the address range are summed to calculate the occurrence frequency of the address range.
[0043] Alternatively, the address range may be defined for each function, such as a function in a control program or a module including multiple functions, as shown in Figure 5. This allows the operating point data, which uses each address range as an element, to more accurately indicate how frequently each function was executed. Furthermore, the address range may be defined by dividing it into branch instructions and jump instructions among the multiple instructions included in the control program. This makes it possible to define the address range so as to include address values corresponding to instructions actually executed in each function.
[0044] In step S320, the analysis device 40 determines whether the state of the mobile object is known. In this embodiment, various mobile object states are created in advance in a test environment, and sampling data including a plurality of address values sampled in those states is provided to the analysis device 40. In this case, the analysis device 40 determines in step S320 that the state of the mobile object is known. In this case, the analysis device 40 proceeds to the process of step S330. On the other hand, when sampling data including a plurality of address values sampled while the mobile object is actually being used by a user is received, the analysis device 40 determines in step S320 that the state of the mobile object is not known. In this case, the analysis device 40 proceeds to the process of step S360.
[0045] In step S330, the analysis device 40 assigns operation point labels indicating the state of the moving object to the operation point data. Next, in step S340, the analysis device 40 plots the operation point data to which the operation point labels have been assigned in operation point space. Then, in step S350, the analysis device 40 performs clustering processing on the operation point data having operation point labels. Note that the clustering processing in step S350 may be performed after all operation point data having operation point labels have been plotted in operation point space. Alternatively, the clustering processing may be performed when operation point data having a predetermined number or more of operation point labels have been plotted in the operation point space. Furthermore, the clustering processing may be repeatedly performed each time the number of operation point data having operation point labels in the operation point space increases by a predetermined number or more.
[0046] For example, when the moving body is a vehicle, the vehicle state may be defined as "driving on a rough road," "normal driving," "sudden stop," etc., and operation point data may be generated from sampling data including a plurality of address values sampled in each state. Fig. 6 shows an example of the results of plotting the generated operation point data in operation point space. Note that while Fig. 6 shows the operation point space as a two-dimensional graph, this is for convenience of illustration; the operation point space is a multidimensional space whose number of dimensions is the number of address sections, which are elements of the operation point data. Furthermore, the vehicle states for operation point labeling are not limited to those shown in Fig. 6; various vehicle states may be used, such as "sudden acceleration," "turning," "high-speed driving," "stopped," and "driving on a slope."
[0047] Here, ECU 10 executes various commands according to the vehicle state in accordance with the control program. Therefore, when the vehicle state differs, the type and frequency of the commands executed will differ. Therefore, the occurrence frequency of address values indicating memory areas storing various commands is tallied for each address range, and the operating point data generated using each address range as an element will be concentrated in a close range for each vehicle state when plotted in operating point space.
[0048] In the clustering process of step S350, a collection of operation point data is grouped for each operation point label, thereby determining the boundaries of clusters of operation point data corresponding to each operation point label, i.e., the vehicle state. For this clustering process, methods such as the k-means method and support vector machine (SVM) can be used. Furthermore, as part of the clustering process, a neural network trained based on operation point data for which the vehicle state is known may be constructed. By constructing such a neural network and providing the neural network with operation point data for which the vehicle state is unknown, it becomes possible to estimate the most likely vehicle state. Furthermore, for operation point data for which the vehicle state is unknown, a regression analysis may be performed based on operation point data for which the vehicle state is known, thereby estimating specific parameters of the vehicle state (e.g., vehicle speed).
[0049] In step S360, which is executed when the state of the moving object is unknown, the analysis device 40 plots the motion point data generated from the sampling data in motion point space. Then, in step S370, the analysis device 40 determines whether the plotted motion point data is within the boundary of any cluster, i.e., whether it belongs to any cluster. If it is determined that the plotted motion point data belongs to any cluster, the analysis device 40 proceeds to processing in step S380. On the other hand, if it is determined that the plotted motion point data does not belong to any cluster, the analysis device 40 proceeds to processing in step S390.
[0050] In step S380, the analysis device 40 estimates the state of the moving body when the sampling data was obtained from the state of the moving body corresponding to the operation point label of the cluster to which the operation point data belongs. Meanwhile, in step S380, the analysis device 40 reproduces the state of the moving body from which similar operation point data is obtained in a simulation environment such as HILS (Hardware In the Loop simulation). Then, the analysis device 40 estimates the state of the moving body when the sampling data was obtained from the reproduced state of the moving body.
[0051] In this way, the analysis device 40 can estimate the state of the moving object with high accuracy based on the operating point data. Therefore, when some abnormality occurs in the moving object, the state of the moving object at the time of the abnormality can be estimated with high accuracy, which can be useful in elucidating the mechanism by which the abnormality occurred and in investigating the cause of the abnormality.
[0052] (Variation) The above describes preferred embodiments of the present disclosure, but the present disclosure is not limited to the above-described embodiments and can be implemented in various modifications within the scope of the gist of the present disclosure.
[0053] For example, in the above-described embodiment, the operating point data is generated from the sampling data before and after the recording request. However, for example, the sampling data may be divided before the recording request and after the recording request, and operating point data may be generated from each of the divided sampling data. In this way, it is possible to estimate the vehicle state before the recording request and the vehicle state after the recording request.
[0054] In the above-described embodiment, the analysis device 40 aggregates the occurrence frequency of address values for each address section to generate operation point data having multiple address sections as elements. However, if the number of elements (number of dimensions) of the operation point data is large, the load of the clustering process and the process of determining which cluster the data belongs to increases. Therefore, the analysis device 40 may aggregate the occurrence frequency of address values for each address section and then perform a dimensionality reduction process on the multiple address sections as elements of the operation point data. This enables the analysis device 40 to generate operation point data with a reduced number of elements (operation point data with reduced number of elements). Techniques that can be used for the dimensionality reduction process include principal component analysis, t-SNE (t-distributed Stochastic Neighbor Embedding), an autoencoder, and UMAP (Uniform Manifold Approximation and Projection).
[0055] In the above-described embodiment, an example has been described in which the address values recorded in the ring buffers 26, 28 are recorded in the external memory 30 in response to a recording request. However, the address values recorded in the ring buffers 26, 28 may also be recorded in the internal memory 22. The recorded address values (sampling data) may then be transmitted from the internal memory 22 to the analysis device 40 via the communication IC 32.
[0056] Furthermore, the sampling data is not limited to being transmitted directly to the analysis device 40 via the communication IC 32. For example, the sampling data may be temporarily stored in the inspection tool and then transmitted from the inspection tool to the analysis device 40. [Explanation of symbols]
[0057] 10: ECU, 12: microcomputer, 14: first core, 16: nth core, 18: program counter, 20: program counter, 22: internal memory, 24: ring buffer unit, 26: ring buffer, 28: ring buffer, 30: external memory, 32: communication IC, 40: analysis device, 100: mobile object state estimation system
Claims
1. An electronic control device mounted on a moving body, which collects information for estimating the state of the moving body and transmits the information to an analysis device (40), a processor (14, 16) for executing a control program including a plurality of instructions stored in a memory (22) to control the state of the vehicle; a program counter (18, 20) indicating an address value of the memory where the instruction to be executed by the processor is stored; a ring buffer (26, 28) that samples the address value indicated by the program counter and stores a certain number of the most recent address values as sampling data; a recording device (30) that records the sampling data stored in the ring buffer as information for estimating the state of the moving body in response to a recording request; and a communication device (32) that transmits the sampling data recorded in the recording device to the analyzing device.
2. 2. The electronic control device according to claim 1, wherein the recording device records the sampling data for a predetermined period of time before and after the recording request.
3. 2. The electronic control device according to claim 1, wherein the recording request is issued in response to an abnormality occurring in the moving object.
4. The electronic control device according to claim 3 , wherein when an abnormality occurs in the mobile body and the sampling data is stored, the recording device also records the nature of the abnormality in the mobile body in association with the stored sampling data.
5. The electronic control device according to claim 1 , wherein the recording request is issued in response to a state of the moving object satisfying a specific condition.
6. 2. The electronic control device according to claim 1, wherein the recording request is generated in response to an external request.
7. 2. The electronic control device according to claim 1, wherein the recording request is issued randomly or at regular intervals during normal operation when no abnormality occurs in the mobile object.
8. An electronic control device (10) according to any one of claims 1 to 7; and an analysis device (40) that aggregates the occurrence frequency of the address values for each address section for the sampling data transmitted from the electronic control device, generates operating point data having multiple address sections as elements, and estimates the state of the moving body based on the generated operating point data.
9. The mobile object state estimation system according to claim 8 , wherein the analysis device defines the address ranges such that each address range includes a plurality of adjacent address values.
10. The mobile object state estimation system according to claim 8 , wherein the analysis device determines the address section for each function of the control program.
11. The mobile object state estimation system according to claim 8 , wherein the analysis device determines the address range by dividing the address range by a branch instruction and a jump instruction among the plurality of instructions included in the control program.
12. 9. The mobile body state estimation system of claim 8, wherein the analysis device aggregates the frequency of occurrence of the address values for each address section, and further performs dimension reduction processing on a plurality of address sections as elements of the operation point data, thereby generating element-reduced operation point data in which the number of elements is reduced.
13. 9. The mobile body state estimation system according to claim 8, wherein the analysis device classifies the plurality of operating point data whose correspondence with the state of the mobile body is known in an operating point space by state of the mobile body, and estimates the state of the mobile body by determining to which category the operating point data generated from the sampling data transmitted from the electronic control unit belongs.
14. 14. The mobile body state estimation system according to claim 13, wherein, when it is determined that the operating point data generated from the sampling data transmitted from the electronic control device does not belong to any category, the analysis device estimates the state of the mobile body corresponding to the operating point data generated from the sampling data from the state of the mobile body when similar operating point data was generated in a simulation environment.
Citation Information
Patent Citations
Information processing device, control method thereof, and program
JP2020088806A