WO2018198770A1 - Calculation device, log recording method, log recording system - Google Patents

Calculation device, log recording method, log recording system Download PDF

Info

Publication number
WO2018198770A1
WO2018198770A1 PCT/JP2018/015183 JP2018015183W WO2018198770A1 WO 2018198770 A1 WO2018198770 A1 WO 2018198770A1 JP 2018015183 W JP2018015183 W JP 2018015183W WO 2018198770 A1 WO2018198770 A1 WO 2018198770A1
Authority
WO
WIPO (PCT)
Prior art keywords
log
input
application
unit
time
Prior art date
Application number
PCT/JP2018/015183
Other languages
French (fr)
Japanese (ja)
Inventor
雄介 宇治土公
勇樹 堀田
成沢 文雄
Original Assignee
日立オートモティブシステムズ株式会社
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by 日立オートモティブシステムズ株式会社 filed Critical 日立オートモティブシステムズ株式会社
Priority to DE112018001810.5T priority Critical patent/DE112018001810T5/en
Publication of WO2018198770A1 publication Critical patent/WO2018198770A1/en

Links

Images

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F11/00Error detection; Error correction; Monitoring
    • G06F11/30Monitoring
    • G06F11/3003Monitoring arrangements specially adapted to the computing system or computing system component being monitored
    • G06F11/3013Monitoring arrangements specially adapted to the computing system or computing system component being monitored where the computing system is an embedded system, i.e. a combination of hardware and software dedicated to perform a certain function in mobile devices, printers, automotive or aircraft systems
    • GPHYSICS
    • G05CONTROLLING; REGULATING
    • G05BCONTROL OR REGULATING SYSTEMS IN GENERAL; FUNCTIONAL ELEMENTS OF SUCH SYSTEMS; MONITORING OR TESTING ARRANGEMENTS FOR SUCH SYSTEMS OR ELEMENTS
    • G05B23/00Testing or monitoring of control systems or parts thereof
    • G05B23/02Electric testing or monitoring
    • G05B23/0205Electric testing or monitoring by means of a monitoring system capable of detecting and responding to faults
    • G05B23/0259Electric testing or monitoring by means of a monitoring system capable of detecting and responding to faults characterized by the response to fault detection
    • G05B23/0264Control of logging system, e.g. decision on which data to store; time-stamping measurements
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F11/00Error detection; Error correction; Monitoring
    • G06F11/30Monitoring
    • G06F11/34Recording or statistical evaluation of computer activity, e.g. of down time, of input/output operation ; Recording or statistical evaluation of user activity, e.g. usability assessment
    • G06F11/3466Performance evaluation by tracing or monitoring
    • G06F11/3476Data logging
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F11/00Error detection; Error correction; Monitoring
    • G06F11/36Preventing errors by testing or debugging software
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F11/00Error detection; Error correction; Monitoring
    • G06F11/36Preventing errors by testing or debugging software
    • G06F11/362Software debugging
    • G06F11/366Software debugging using diagnostics
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F11/00Error detection; Error correction; Monitoring
    • G06F11/07Responding to the occurrence of a fault, e.g. fault tolerance
    • G06F11/0703Error or fault processing not based on redundancy, i.e. by taking additional measures to deal with the error or fault not making use of redundancy in operation, in hardware, or in data representation
    • G06F11/0706Error or fault processing not based on redundancy, i.e. by taking additional measures to deal with the error or fault not making use of redundancy in operation, in hardware, or in data representation the processing taking place on a specific hardware platform or in a specific software environment
    • G06F11/0736Error or fault processing not based on redundancy, i.e. by taking additional measures to deal with the error or fault not making use of redundancy in operation, in hardware, or in data representation the processing taking place on a specific hardware platform or in a specific software environment in functional embedded systems, i.e. in a data processing system designed as a combination of hardware and software dedicated to performing a certain function
    • G06F11/0739Error or fault processing not based on redundancy, i.e. by taking additional measures to deal with the error or fault not making use of redundancy in operation, in hardware, or in data representation the processing taking place on a specific hardware platform or in a specific software environment in functional embedded systems, i.e. in a data processing system designed as a combination of hardware and software dedicated to performing a certain function in a data processing system embedded in automotive or aircraft systems
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F11/00Error detection; Error correction; Monitoring
    • G06F11/07Responding to the occurrence of a fault, e.g. fault tolerance
    • G06F11/0703Error or fault processing not based on redundancy, i.e. by taking additional measures to deal with the error or fault not making use of redundancy in operation, in hardware, or in data representation
    • G06F11/0766Error or fault reporting or storing
    • G06F11/0778Dumping, i.e. gathering error/state information after a fault for later diagnosis

Definitions

  • the present invention relates to an arithmetic device, a log recording method, and a log recording system.
  • Patent Document 1 sets simulation means for simulating a virtual environment, one or more display means for displaying the results simulated by the simulation means in real time, and conditions for recording and saving the contents of the simulation.
  • Record storage condition setting means checkpoint file means for storing all the contents of the simulation in a checkpoint file based on the above conditions, and the time from the time when the checkpoint file is saved to the time when the next saving is performed Using the event log file means for saving only the difference in the simulated content changes in the event log file, the saved checkpoint file and the event log file, the simulated content at an arbitrary time is reproduced.
  • a display unit for displaying on the display unit, and an integrated management unit for integrated management of the entire system.
  • Distributed Simulation system characterized by comprising: means, is disclosed.
  • An arithmetic device includes an execution unit that repeatedly executes an application, a count unit that counts the number of sequences based on the execution of the application, with an interval at which the application is executed a predetermined number of times as one sequence.
  • a recording unit that records, as an input log, a combination of the input data input to the application and the number of sequences at the time when the input data is input to the application.
  • the log recording method includes executing an application repeatedly, setting an interval at which the application is executed a predetermined number of times as one sequence, and counting the number of sequences based on the execution of the application, Recording the combination of the input data input to the application and the sequence number at the time when the input data is input to the application as an input log.
  • a log recording system is a log recording system including an application execution device and a log storage device connected by a network, wherein the application execution device repeatedly executes an application, An interval at which an application is executed a predetermined number of times is defined as one sequence, a counting unit that counts the number of sequences based on the execution of the application, an execution device communication unit that communicates with the log storage device, and an input that is input to the application
  • a recording unit that records data and a combination of the number of sequences at the time when the input data is input to the application as an input log to the log storage device via the execution device communication unit, and the log storage device includes: ,
  • the input log from the application execution device Comprising a storage device communication unit for receiving, and a storage unit for the input log and the input log storage device communication unit is stored in association with the time of reception.
  • the block diagram which shows the structure of the vehicle control system 1 2A shows a format of the log data 114A when the output value includes the time stamp
  • FIG. 2B shows a format of the log data 114A when the output value does not include the time stamp.
  • history 115 Flow chart showing operation of sensor information acquisition unit 101 A flowchart showing the operation of the application execution management unit 102 A flowchart showing the operation of the log generation unit 103 A flowchart showing the operation of the log reproduction unit 104 Flow chart showing operation of log recording / reproducing apparatus 20 Diagram showing an example of log recording mode operation
  • An “application” in the present embodiment is a program that is periodically executed.
  • the “execution cycle” in the present embodiment is a target value of a time interval for executing a certain application. That is, the time interval at which an application is actually executed may not match the execution cycle.
  • the execution timing of the application is determined by a method of measuring the time until the target value is reached each time the application is executed, and executing the application when the target value is reached. In this case, it is assumed that the target value does not coincide with the actual application execution time interval due to a timer error when measuring the elapsed time or a delay due to other processing load.
  • the “sequence” in the present embodiment is a time having a length delimited by the time when the reference application is actually executed. That is, the start time of each sequence is the time when the reference application is executed.
  • the “sequence number” in the present embodiment is a numerical value that is counted up each time a reference application is executed.
  • FIG. 1 is a block diagram showing a configuration of a vehicle control system 1 including a vehicle control device 10 which is an arithmetic device according to the present invention.
  • the vehicle control system 1 includes a vehicle control device 10, a log recording / reproducing device 20, an external sensor group 30, a vehicle sensor group 40, and an actuator group 50.
  • the vehicle control device 10, the log recording / reproducing device 20, the external sensor group 30, the vehicle sensor group 40, and the actuator group 50 are connected by an in-vehicle network 60.
  • the vehicle control system 1 is mounted on a vehicle, for example, recognizes the state of an obstacle such as a traveling road or a surrounding vehicle in the vicinity of the vehicle, determines driving behavior or vehicle control of the vehicle, and controls vehicle movement. This system realizes automatic driving.
  • the external sensor group 30 is a sensor group for recognizing obstacles in a certain range around the vehicle, such as other vehicles, pedestrians, objects, and features such as road signs and white lines.
  • the outside world sensor group 30 includes, for example, a camera, a radar, a lidar, and the like.
  • the outside world sensor group 30 outputs detected information on obstacles and features around the vehicle, such as relative distance and relative angle from the vehicle, to the in-vehicle network 60 to which the outside world sensor group 30 and the vehicle control device 10 are connected. To do.
  • the vehicle control device 10 is configured to obtain an output result from the external sensor group 30 via the in-vehicle network 60.
  • the external sensor group 30 is configured to detect an obstacle or a feature, but the vehicle control device 10 or the like is output using signals and data output from the external sensor group 30. These detection processes may be performed by another device.
  • the vehicle sensor group 40 is a device group that detects information related to vehicle movement, such as travel speed, steering angle, accelerator operation amount, brake operation amount, and the like.
  • the vehicle sensor group 40 outputs these state quantities detected on the in-vehicle network 60, for example.
  • the vehicle control device 10 and other devices connected to the in-vehicle network 60 acquire state quantities of various components output from the vehicle sensor group 40 through the in-vehicle network 60.
  • Actuator group 50 is a device group that controls control elements such as steering, brakes, and accelerators that determine the movement of the vehicle.
  • the actuator group 50 controls the movement of the vehicle based on steering information such as a steering wheel, a brake pedal, and an accelerator pedal by the driver, and a target control value output from the vehicle control device 10.
  • the vehicle control device 10 is, for example, an ECU (Electronic Control Unit), and includes a processing unit 100, a storage unit 110, and a communication unit 120.
  • the form of the vehicle control device 10 is not particularly limited.
  • the vehicle control device 10 may be integrated into the external sensor group 30.
  • the vehicle control device 10 and the log recording / reproducing device 20 in the present embodiment have two operation modes, a log recording mode and a log reproduction mode.
  • the vehicle control device 10 and the log recording / reproducing device 20 are mounted on the vehicle and record logs in the log recording mode.
  • the vehicle control device 10 and the log recording / reproducing device 20 may be operated on the vehicle control system 1 in the log reproduction mode, but may be operated on a place physically separated from the vehicle control system 1, for example, an indoor desk. Good.
  • the storage unit 110 stores an application A (not shown), and this application A is a reference application in the present embodiment. That is, when the application A is executed, the sequence number is counted up. Details will be described later.
  • application A is also referred to as “application A”.
  • the processing unit 100 includes a CPU (Central Processing Unit) and a RAM (Random Access Memory), and the CPU expands a program (not shown) stored in the storage unit 110 to the RAM and executes the program.
  • the processing unit 100 includes a sensor information acquisition unit 101, an application execution management unit 102, a log generation unit 103, and a log reproduction unit 104 as its functions.
  • the processing unit 100 outputs a stop command to the sensor information acquisition unit 101, the application execution management unit 102, the log generation unit 103, and the log reproduction unit 104.
  • Sensor information acquisition unit 101 operates only in the log recording mode.
  • the sensor information acquisition unit 101 acquires peripheral environment information related to the periphery of the vehicle and vehicle sensor information related to the movement of the vehicle, and stores these in the application input / output data group 111 as “output values”. Further, the sensor information acquisition unit 101 stores the output value and the output value in the log data buffer 114 in association with the time when the output value is stored in the application input / output data group 111.
  • the sensor information acquisition unit 101 acquires output values from the external sensor group 30 and the vehicle sensor group 40.
  • the surrounding environment information is, for example, information on obstacles present around the vehicle, information on features indicating road characteristics around the vehicle, and the like.
  • Obstacles around the vehicle include, for example, other vehicles moving around the vehicle, moving objects such as bicycles and pedestrians, parked vehicles stationary on the road around the vehicle, and falling objects , Installations, etc.
  • the vehicle sensor information is, for example, the position of the vehicle, travel speed, steering angle, accelerator operation amount, brake operation amount, and the like.
  • the surrounding environment information and the vehicle sensor information acquired by the sensor information acquisition unit 101 are stored in the storage unit 110 as the application input / output data group 111.
  • the application execution management unit 102 operates in both the log recording mode and the log reproduction mode.
  • the application execution management unit 102 reads the execution cycle of the application A from the application execution parameter group 112 stored in the storage unit 110, and causes the application A to be executed for each execution cycle.
  • the application execution management unit 102 increments the sequence number every time the application A is executed, and records the sequence number and the time when the sequence was started in a sequence history 115 described later.
  • the log generation unit 103 operates only in the log recording mode, and creates log data 114A based on an output value stored in the log data buffer 114 and time information.
  • the log generation unit 103 stores the created log data 114A in the log data buffer 114, and transmits the log data 114A to the log recording / reproducing apparatus 20 via the communication unit 120.
  • the log generation unit 103 may transmit the created log data 114 ⁇ / b> A to the log recording / reproducing apparatus 20 as it is without storing it in the log data buffer 114.
  • the log reproduction unit 104 operates only in the log reproduction mode, and extracts an output value from the log data 114A received from the log recording / reproduction device 20 via the communication unit 120. Then, the log generation unit 103 calculates the timing at which the output value should be stored in the application input / output data group 111 based on the analysis result of the log data 114A, and stores the output value in the application input / output data group 111 at that timing.
  • the storage unit 110 is, for example, an HDD (HARD Disk Drive) or a flash memory. However, it may be configured to include a ROM (Read Only Memory).
  • the storage unit 110 stores a program executed by the processing unit 100 to realize its function, an application executed periodically, a data group necessary for the vehicle control apparatus 10 to operate, and the like. Specifically, the storage unit 110 stores an application input / output data group 111, an application execution parameter group 112, a log reproduction parameter group 113, a log data buffer 114, and an application A (not shown).
  • the application input / output data group 111 stores information input to the application A and information output from the application A. Specifically, the application input / output data group 111 stores peripheral environment information related to the periphery of the vehicle, vehicle sensor information related to the movement of the vehicle, and information processed by the application A. In the log recording mode, the sensor information acquisition unit 101 and the application A store data in the application input / output data group 111. In the log reproduction mode, the log generation unit 103 stores data in the application input / output data group 111.
  • the application execution parameter group 112 stores setting information related to the application A executed in the vehicle control device 10 and an operation mode that the vehicle control device 10 should execute at the next startup.
  • the setting information related to the application A is, for example, the execution cycle of the application A and the initial delay time.
  • the application execution management unit 102 manages application execution using the application execution parameter group 112.
  • the application execution parameter group 112 can be rewritten from a terminal device (not shown) connected to the in-vehicle network 60. For example, when an operator finds a problem in the operation of the vehicle control device 10, the operation mode of the vehicle control device 10 is changed from the log recording mode to the log reproduction mode as follows. That is, the operator rewrites the operation mode stored in the application execution parameter group 112 to the log reproduction mode using the terminal device, and turns on the power of the vehicle control device 10 again.
  • the initial delay time included in the application execution parameter group 112 is a parameter that determines the initial execution timing of the application.
  • the first time here is the first time each time the vehicle control device 10 is activated.
  • the application is executed immediately after the vehicle control device 10 is activated. That is, when the initial delay time of an application is Td and the individual cycle is Ti, the application is executed at the times of Td, Td + Ti, Td + 2 ⁇ Ti, and Td + 3 ⁇ Ti, assuming that the time when the vehicle control device 10 is activated is zero.
  • the initial delay time is zero.
  • the log reproduction parameter group 113 stores a storage delay sequence that is a parameter for determining the operation of the log generation unit 103 in the log reproduction mode.
  • the storage delay sequence is a parameter used when determining the timing to store the log data 114A received by the communication unit 120 first in the application input / output data group 111 in the log reproduction mode. For example, when the storage delay sequence is “3” and the communication unit 120 receives the first log data 114A when the sequence number is “5” in the log reproduction mode, the following processing is performed.
  • the log reproduction parameter group 113 may store parameters other than the storage delay sequence.
  • the log data buffer 114 stores log data 114A and information for creating the log data 114A in the log recording mode.
  • the information for creating the log data 114 ⁇ / b> A is an output value and a time when the output value is input to the application input / output data group 111.
  • the log data buffer 114 temporarily stores log data 114A received by the communication unit 120 from the log recording / reproducing device 20 in the log reproduction mode.
  • FIG. 2A is a diagram illustrating a format of log data 114A when the output value includes a time stamp
  • FIG. 2B is a diagram illustrating a format of log data 114A when the output value does not include a time stamp.
  • the log data 114A includes four values: an output value, a sequence number, an offset value described later, and time stamp correction information.
  • the time stamp correction information is not provided as shown in FIG.
  • the time stamp may be deleted from the output value because the time stamp is corrected as described later using the time stamp correction information. Returning to FIG. 1, the description will be continued.
  • the sequence history 115 stored in the storage unit 110 is information indicating the time when each sequence number is started.
  • the sequence history 115 is created by the application execution management unit 102.
  • the sequence history 115 may be transmitted to the log recording / reproducing apparatus 20 together with the log data 114A.
  • FIG. 3 is a diagram illustrating an example of the sequence history 115.
  • the example shown in FIG. 3 shows a case where the execution period of the application A is 10 ms, and the sequence number is updated approximately every 10 ms, but is not strictly constant. Returning to FIG. 1, the description will be continued.
  • Application A (not shown) stored in the storage unit 110 is periodically executed by the application execution management unit 102. However, as shown in the sequence history 115 illustrated in FIG. 3, strictly speaking, there is some time lag, not every fixed time. Application A immediately reads the information written in application input / output data group 111. That is, the time when the output value is written to the application input / output data group 111 can be regarded as the time when the output value is input to the application A. In addition, when the application A writes to the application input / output data group 111, it outputs the same information to the log data buffer 114 and writes the output time to the log data buffer 114.
  • the communication unit 120 communicates with other devices mounted on the vehicle based on various communication protocols.
  • the communication unit 120 includes, for example, a network card compliant with a communication standard such as IEEE 802.3 or CAN (Controller Area Network).
  • the connection form between the communication unit 120 and other devices mounted on the vehicle is not limited to wired connection such as Ethernet, but is not limited to Bluetooth (registered trademark) or wireless LAN (Local Area Network). It may be a short-range wireless connection.
  • the communication unit 120 transmits the log data 114A output from the log generation unit 103 to the log recording / reproducing device 20 in the log recording mode. In the log reproduction mode, the communication unit 120 stores the log data 114A received from the log recording / reproducing device 20 in the log data buffer 114 and transmits the reception of the log data 114A to the log reproduction unit 104.
  • the log recording / reproducing apparatus 20 is an ECU including a CPU, a ROM, and a RAM, for example.
  • the log recording / reproducing apparatus 20 has two operation modes of a log recording mode and a log reproduction mode.
  • the log recording mode exhibits a log recording function in the log recording mode and a log reproduction function in the log reproduction mode.
  • the operation mode of the log recording / reproducing apparatus 20 can be changed by setting a DIP switch (not shown) or by communication from the outside.
  • the log recording function is a function for recording the log data 114A output from the vehicle control device 10 to the in-vehicle network 60.
  • the log reproduction function is a function for reproducing the log data 114A recorded by the log recording function and outputting it to the in-vehicle network 60.
  • the log recording / reproducing apparatus 20 controls the output interval of the log data 114A at the time of log reproduction to be equal to that at the time of recording the log data 114A.
  • the log recording / reproducing apparatus 20 includes a communication unit 220, a log data group 210, and a log recording / reproducing unit 200.
  • the communication unit 220 exchanges the log data 114A with the vehicle control device 10 based on various communication protocols.
  • the communication unit 220 corresponds to a communication standard such as IEEE 802.3 or CAN (Controller Area Network), for example.
  • the connection form between the communication unit 220 and another device is not limited to a wired connection, and may be a wireless connection such as Bluetooth (registered trademark) or a wireless LAN (Local Area Network).
  • the log data group 210 is, for example, an HDD or a flash memory.
  • the log data group 210 stores log data 114A acquired from the vehicle control device 10 and the reception time of the log data 114A.
  • the log data group 210 is written and read by the log recording / reproducing unit 200.
  • the log recording / reproducing unit 200 stores the log data 114A received from the vehicle control device 10 in the log data group 210 in association with the reception time.
  • the communication unit 220 may record an interval of time when the log data 114A is received instead of the reception time.
  • the log recording / reproducing unit 200 outputs the log data 114A stored in the log data group 210 to the in-vehicle network 60 at the same time interval as at the time of reception.
  • FIG. 4 is a flowchart showing the operation of the sensor information acquisition unit 101.
  • the execution subject of each step described below is the CPU of the vehicle control device 10.
  • the sensor information acquisition unit 101 operates only in the log recording mode.
  • step S301 the sensor information acquisition unit 101 acquires sensor data from the external sensor group 30 and the vehicle sensor group 40.
  • the timing at which the sensor information acquisition unit 101 acquires sensor data There is no particular limitation on the timing at which the sensor information acquisition unit 101 acquires sensor data.
  • the sensor data output from the external sensor group 30 or the vehicle sensor group 40 to the in-vehicle network may be detected and acquired each time.
  • the sensor information acquisition part 101 may set a timer and acquire sensor data regularly irrespective of operation
  • step S ⁇ b> 302 the sensor information acquisition unit 101 stores the sensor data in the application input / output data group 111.
  • step S303 the sensor information acquisition unit 101 combines the current time and the same data as the sensor data stored in step S302, and stores them in the log data buffer 114.
  • step S304 it is determined whether or not the vehicle control device 10 has received a stop command. If it is determined that the stop command has been received, the operation shown in FIG. The process returns to step S301.
  • FIG. 5 is a flowchart showing the operation of the application execution management unit 102.
  • the execution subject of each step described below is the CPU of the vehicle control device 10.
  • the application execution management unit 102 performs the same operation as described below regardless of the operation mode.
  • the application execution management unit 102 starts the processes of step S311 and step S321 in parallel when the vehicle control device 10 is activated.
  • step S311 the application execution management unit 102 substitutes zero for N, which is a variable indicating the number of sequences.
  • step S312 it is determined whether or not the application A is executed. If it is determined that the application A has been executed, the process proceeds to step S313. If it is determined that the application A has not been executed, the process remains in step S312.
  • step S313 the application execution management unit 102 increments the variable N, that is, increments the value of the variable N by one.
  • step S314 the application execution management unit 102 records the current time and the value of the variable N, that is, the current sequence number, in the sequence history 115.
  • step S317 the application execution management unit 102 determines whether or not a stop command has been received. If it is determined that the stop command has been received, the operation of the flowchart shown in FIG. If so, the process returns to step S312.
  • step S321 the application execution management unit 102 waits for the set initial delay time, and executes application A in the subsequent step S322.
  • step S323 the application execution management unit 102 waits for the execution cycle of the application A.
  • step S324 the application execution management unit 102 determines whether or not a stop command has been received. If it is determined that the stop command has been received, the operation of the flowchart shown in FIG. If so, the process returns to step S322.
  • FIG. 6 is a flowchart showing the operation of the log generation unit 103.
  • the log generation unit 103 operates only in the log recording mode.
  • the execution subject of each step described below is the CPU of the vehicle control device 10.
  • the timing at which the log generation unit 103 starts operation is no particular limitation on the timing at which the log generation unit 103 starts operation.
  • the log generation unit 103 may detect that the data and the storage time information are stored in the log data buffer 114, and may start the operation each time or may start the operation periodically.
  • step S341 the log generation unit 103 reads the combination of the output value and the time stored in the log data buffer 114.
  • the log generation unit 103 reads the sequence history 115.
  • the log generation unit 103 identifies which sequence number corresponds to the time read in step S341. For example, if the sequence history 115 is as shown in FIG. 3 and the time is “25.67”, the sequence number is specified as “3” because it is between “20.03” and “29.99”. Is done.
  • the log generation unit 103 calculates an offset value.
  • the offset value is a value indicating an elapsed time from the start time of the sequence. For example, when the time is “25.67”, since the sequence number is specified as “3” as described above, the offset value is “20. It is calculated as “5.64” obtained by subtracting “03”.
  • the log generation unit 103 creates time stamp correction information.
  • the time stamp correction information is calculated as the difference between the reception time and the time stamp included in the output value. For example, when the output value including the time stamp “25.00” is stored in the log data buffer 114 together with the time “25.67”, the time stamp correction information is “0.67”. However, this step is not executed if the output value does not include a time stamp.
  • the log generation unit 103 generates the log data 114A by combining the output value, the sequence number, the offset value, and the time stamp correction information.
  • the log generation unit 103 stores the created log data 114 ⁇ / b> A in the log data buffer 114 and transmits it to the log recording / reproducing device 20 via the communication unit 120. In addition, the log generation unit 103 deletes the combination of the output value and time information corresponding to the created log data 114 ⁇ / b> A from the log data buffer 114.
  • step S347 the log generation unit 103 determines whether or not a stop command has been received.
  • the log generation unit 103 ends the operation of the flowchart illustrated in FIG. 6 and determines that the stop command has not been received. In this case, the process returns to step S341.
  • FIG. 7 is a flowchart showing the operation of the log reproduction unit 104.
  • the execution subject of each step of the flowchart described below is the CPU of the log recording / reproducing apparatus 20.
  • step S371 the log reproduction unit 104 reads the storage delay sequence from the log reproduction parameter group 113.
  • step S372 the log reproducing unit 104 determines whether or not the communication unit 120 has received the first log data 114A. If the log reproduction unit 104 determines that it has been received, the process proceeds to step S373. If it is determined that it has not been received, the log reproduction unit 104 remains in step S372. In step S373, the log reproduction unit 104 substitutes the sequence number included in the received first log data 114A for the variable J. This variable J is referred to in step S383 described later.
  • the log reproduction unit 104 substitutes the current sequence number for the variable N, in other words, the sequence number at the time when the communication unit 120 received the first log data 114A.
  • the log reproducing unit 104 substitutes the sum of the value of the variable N substituted in step S374 and the storage delay sequence read in step S371 for the variable M.
  • step S376 the log reproduction unit 104 determines whether or not the current sequence number is M. If it is determined that the current sequence number is M, the process proceeds to step S377. If it is determined that the current sequence number is not M, the process remains in step S376. In step S377, the log reproduction unit 104 stores the received output value of the first log data 114A in the application input / output data group 111. However, at this time, if the time stamp correction information is included in the log data 114A, the time stamp included in the output value of the log data 114A is corrected and stored in the application input / output data group 111.
  • the detailed timing at which the log reproduction unit 104 stores the output value in the application input / output data group 111 follows the offset value included in the log data 114A. For example, when the offset value is “2.5”, the output value is stored in the application input / output data group 111 2.5 ms after the start of the sequence.
  • step S381 the log reproduction unit 104 determines whether or not the communication unit 120 has received the next log data 114A. If it is determined that the next log data 114A has been received, the process proceeds to step S382. If it is determined that the next log data 114A has not yet been received, the process remains in step S381.
  • step S382 the sequence number included in the log data (hereinafter, “log data to be processed”) 114A confirmed to be received in step S381 is substituted into a variable K.
  • step S383 the value of M + (K ⁇ J) is substituted for the variable L. In this calculation, the difference between the sequence number of the first log data 114A and the sequence number of the log data 114A to be processed is added to the sequence number for storing the first log data 114A in the application input / output data group 111. It is.
  • step S384 the log reproduction unit 104 determines whether the current sequence number is L or not. If it is determined that the current sequence number is L, the process proceeds to step S385, and if it is determined that the current sequence number is not L, the process remains in step S384.
  • step S385 the output value included in the log data 114A to be processed is stored in the application input / output data group 111. However, at this time, when the time stamp correction information is included in the log data 114A to be processed, the time stamp included in the output value of the log data 114A is corrected and stored in the application input / output data group 111.
  • the time stamp correction in this step is as follows.
  • the time of the time stamp after correction is Tsp
  • the time when the output value of the log data 114A is stored in the application input / output data group 111 is Top
  • the time of the time stamp before correction is Tsr
  • the log data 114A in the log recording mode If the time stored in the application input / output data group 111 is Tor, the time stamp is corrected so that the following Expression 1 is satisfied.
  • Top-Tsp Tor-Tsr (1)
  • Equation 1 the value on the right side of Equation 1 is stored in the log data 114A as time stamp correction information. Therefore, if Top is clarified, Tsp can be calculated.
  • Top can be calculated from the sequence number L calculated in step S383 and the offset value included in the log data 114A.
  • the time of each sequence is calculated as the execution cycle itself of the application A, in other words, assuming that the application A is executed according to the execution cycle. Therefore, the corrected time stamp Tsp can be calculated from the calculated Top and time stamp correction information.
  • step S377 the log reproducing unit 104 determines whether or not a stop command has been received.
  • the log reproducing unit 104 ends the operation of the flowchart shown in FIG. 7 and determines that the stop command has not been received. In this case, the process returns to step S381.
  • FIG. 8 is a flowchart showing the operation of the log recording / reproducing apparatus 20.
  • the execution subject of each step of the flowchart described below is the CPU of the log recording / reproducing apparatus 20.
  • step S351 the log recording / reproducing unit 200 determines whether the operation mode is set to the recording mode or the generation mode. When it is determined that the recording mode is set, the process proceeds to step S352, and when it is determined that the playback mode is set, the process proceeds to step S356.
  • step S352 the log recording / reproducing unit 200 determines whether or not the communication unit 220 has received the log data 114A from the in-vehicle network 60 to which the vehicle control device 10 is connected.
  • the process proceeds to step S353, and when it is determined that the log data 114A has not been received, the process stays at step S352 and waits for the next reception.
  • the log recording / reproducing apparatus 20 acquires the log data 114A received by the communication unit 220 and the reception time of the log data 114A.
  • step S354 the log recording / reproducing unit 200 stores the log data 114A and the reception time acquired in step S353 in the log data group 210.
  • step S355 the log recording / reproducing apparatus 20 determines whether or not a stop command has been received. When it is determined that the stop command has been received, the operation of the flowchart shown in FIG. 8 is terminated, and when it is determined that the stop command has not been received, the process returns to step S352.
  • step S355 the log recording / reproducing unit 200 reads the log data group 210.
  • step S356 the log recording / reproducing unit 200 outputs the oldest log data 114A that is the log data 114A included in the log data group 210 and has not yet been transmitted. However, at this time, the transmission timing is adjusted so that the time interval with the log data 114A output immediately before is the same as the time interval when the log data 114A is received.
  • the communication unit 220 sequentially receives the log data 114A at intervals of 8 ms, 5 ms, and 15 ms during recording
  • the log data 114A is similarly output to the in-vehicle network 60 at intervals of 8 ms, 5 ms, and 15 ms.
  • step S357 the log recording / reproducing unit 200 determines whether or not the untransmitted log data 114A is included in the log data group 210. If it is determined that there is untransmitted log data 114A, the process returns to step S356. If it is determined that all log data 114A has been transmitted, the operation of the flowchart shown in FIG.
  • FIG. 9 is a diagram illustrating an operation example of the vehicle control device 10 in the recording mode.
  • time elapses from the left to the right in the figure, and the scale in the figure is shown every 10 ms.
  • Squares A1 to A4 shown in FIG. 9 indicate the execution timing of the application A, and indicate that the application A is executed at the left end timing of the square. That is, the width of the square and the right end of the square have no special meaning.
  • the downward arrows in the figure represent the timing at which the output values P1 to P4 are input to the application input / output data group 111.
  • the execution cycle of the application A is 10 ms.
  • the interval at which the application A is actually executed does not necessarily match 10 ms.
  • the sequence number is counted every time the application A is executed by the application execution management unit 102.
  • the circled numbers indicate the sequence numbers, and the sequence breaks indicate the execution timing of the application A. That is, output values P1 and P2 belong to sequence number 1, and output values P3 and P4 belong to sequence number 3. If the sequence number is uniformly updated every 10 ms that is the execution cycle of the application A without considering the actual execution timing of the application A, the output value P2 generated after 10 ms is set to the sequence number 2, The output value P3 generated before 20 ms also belongs to the sequence number 2. That is, in that case, the sequence number cannot correctly represent the context between the execution timing of the application A and the timing at which the output value is input.
  • the log generation unit 103 refers to the sequence history 115 generated by the application execution management unit 102 and identifies the sequence number to which each output value belongs. Then, the log generation unit 103 calculates the offset values of the output values P1 to P4 as Q1 to Q4 shown in FIG. 9 as the elapsed time from the start time of the sequence to which each belongs.
  • the vehicle control device 10 uses the application execution management unit 102 that repeatedly executes the application A, and the application execution management that counts the number of sequences based on the execution of the application, with the interval at which the application A is executed once as one sequence. And a log generation unit 103 that records information including a combination of an output value input to application A and a sequence number of times when the output value is input to application A as log data 114A. That is, the vehicle control apparatus 10 records the timing of data input to the application A using the number of sequences based on the number of executions of the application A. Therefore, it is possible to accurately record the relationship between the timing at which application A is executed and the timing at which data is input to application A.
  • the vehicle control device 10 calculates, as an offset value, a log generation unit 103 that calculates a time from the start time of the sequence indicated by the number of sequences included in the input log to the time when the output value is input to the application A (FIG. 6 step S344).
  • the log generation unit 103 records the output value, sequence number, and offset value in combination as shown in FIG. Therefore, the timing when data is input to the application A can be recorded in detail.
  • the vehicle control apparatus 10 includes a log generation unit 103 (step S345 in FIG. 6) that calculates, as time correction information, the difference between the time information included in the output value and the time when the output value is input to the application A. .
  • the log generation unit 103 records the output value and time stamp correction information in combination as shown in FIG. Therefore, information for correcting the time stamp included in the output value can be recorded together.
  • the vehicle control device 10 includes a communication unit 120 that transmits the log data 114A.
  • the log generation unit 103 records the log data 114 ⁇ / b> A in the log recording / reproducing device 20 via the communication unit 120. Therefore, even when the storage area of the vehicle control device 10 is scarce or when the vehicle control device 10 does not include a nonvolatile memory, the operation log of the vehicle control device 10 can be recorded.
  • the vehicle control apparatus 10 includes a log storage unit in which a plurality of input logs are recorded, and a sequence in which output values included in the plurality of log data 114A stored in the log storage unit are combined with output values.
  • a log reproduction unit 104 that inputs to the application A based on the number is provided. Therefore, the vehicle control device 10 can reproduce the front-rear relationship between the timing when the output value is input to the application A and the execution timing of the application A.
  • the vehicle control apparatus 10 combines the output values included in the log data buffer 114 in which a plurality of input logs are recorded and the plurality of log data 114A stored in the log data buffer 114 into the output values.
  • the log reproduction unit 104 is input to the application A based on the number of sequences and the offset value. Therefore, the vehicle control device 10 can reproduce the timing when the output value is input to the application A in detail. Thereby, the reproducibility of a defect can be improved, for example.
  • the vehicle control device 10 sets the time information included in each output value included in the log data buffer 114 in which a plurality of input logs are recorded and the plurality of log data 114 ⁇ / b> A stored in the log data buffer 114.
  • the log reproduction unit 104 corrects based on the stamp correction information and inputs the corrected output value to the application A based on the number of sequences combined with the output value. Therefore, the vehicle control apparatus 10 can reproduce the front-rear relationship between the timing when the output value is input to the application A and the execution timing of the application A after correcting the time stamp included in the output value.
  • the communication unit 120 of the vehicle control device 10 receives a plurality of log data 114A, the log data buffer 114 in which the log data 114A received by the communication unit 120 is recorded, and the log data 114A that the communication unit 120 receives first.
  • the log reproduction parameter group 113 storing the storage delay cycle, which is information indicating the interval from the time when the first log is received to the time when the output value included in the first log is input to the application A, and the communication unit 120 is the first Determine the initial log input sequence that is the sequence to input the output value included in the initial log to the application based on the number of sequences when the log is received and the storage delay cycle, and the output value included in the initial log in the initial log input sequence Is input to the application A.
  • the vehicle control apparatus 10 waits for the specified storage delay cycle before starting to reproduce the log, so to speak, buffering is performed, so that even if a problem occurs in the in-vehicle network 60, the log reproduction is adversely affected. Can be reduced.
  • the log reproduction unit 104 of the vehicle control device 10 includes the output value included in the subsequent log that is the second and subsequent input logs received by the communication unit 120 in the number of sequences included in the initial log and the subsequent log.
  • the number of sequences to be output and the output value included in the initial log are input to the application A in a sequence determined based on the sequence input to the application A. Therefore, after waiting for the storage delay cycle, the output value of the subsequent log data 114A can be input to the application input / output data group 111 so as to reproduce the log recording mode.
  • the embodiment described above may be modified as follows. (1) The vehicle control device 10 may not include the application input / output data group 111, and the vehicle control device 10 may directly input an output value to the application A. (2) The vehicle control device 10 may not record the offset value in the log recording mode. In this case, detailed determination of the timing for inputting the output value using the offset value to the application input / output data group 111 in the log reproduction mode is not performed.
  • the application A may not read the information input to the application input / output data group 111 immediately, but may read it as necessary.
  • the vehicle control device 10 may also periodically execute applications other than the application A.
  • the number of sequences may be counted by the repetition unit calculated by the common multiple of the execution cycle of each application. For example, when two applications having an execution cycle of 20 ms and 50 ms are executed, the least common multiple is 100 ms. Therefore, the sequence number is counted up based on the number of executions of the application executed with every 100 ms as a target. That's fine.
  • the vehicle control device 10 may count up on condition that the application A is executed twice or more.
  • the vehicle control device 10 may include an input / output interface (not shown), and a program may be read from another device via a medium that can be used by the input / output interface and the vehicle control device 10 when necessary.
  • the medium refers to, for example, a storage medium that can be attached to and detached from the input / output interface, or a communication medium, that is, a wired, wireless, or optical network, or a carrier wave or digital signal that propagates through the network.
  • part or all of the functions realized by the program may be realized by a hardware circuit or FPGA.

Landscapes

  • Engineering & Computer Science (AREA)
  • Theoretical Computer Science (AREA)
  • Physics & Mathematics (AREA)
  • General Engineering & Computer Science (AREA)
  • General Physics & Mathematics (AREA)
  • Quality & Reliability (AREA)
  • Computer Hardware Design (AREA)
  • Computing Systems (AREA)
  • Mathematical Physics (AREA)
  • Automation & Control Theory (AREA)
  • Debugging And Monitoring (AREA)

Abstract

This calculation device is provided with: an execution unit which repeatedly executes an application, a count unit which takes, as one cycle, an interval in which the application is executed the prescribed number of times, and counts the number of cycles on the basis of execution of the application; and a recording unit which records, as an input log, an association of input data input to the application with the number of cycles at a time when the input data is input to the application.

Description

演算装置、ログ記録方法、ログ記録システムArithmetic device, log recording method, log recording system
 本発明は、演算装置、ログ記録方法、およびログ記録システムに関する。 The present invention relates to an arithmetic device, a log recording method, and a log recording system.
 自動運転を実現する制御アプリケーションはあらゆる状況下での動作保証が求められるため、膨大な実環境走行による動作検証が必要となる。実環境走行で発生したアプリケーションの不具合を効率的に解消するための不具合の再現方法として、以下の手法が知られている。すなわち走行時にアプリケーションに入力された周辺環境等に関するデータをログに記録しておき、不具合発生時にはログから当該データを再生してアプリケーションに入力することにより、不具合を再現する手法である。特許文献1には、仮想環境を模擬する模擬手段と、上記模擬手段により模擬された結果をリアルタイムで表示する1台以上の表示手段と、上記模擬の内容を記録保存するための条件を設定する記録保存条件設定手段と、上記条件に基づいて上記模擬の内容全てをチェックポイントファイルに保存するチェックポイントファイル手段と、上記チェックポイントファイルに保存を行った時刻から次の保存を行う時刻までの間の上記模擬の内容の変化の差分だけをイベントログファイルに保存するイベントログファイル手段と、保存された上記チェックポイントファイル及び上記イベントログファイルを用いて、任意の時刻における上記模擬の内容を再生して上記表示手段に表示するための再生手段と、システム全体の統合管理を行うための統合管理手段と、を備えたことを特徴とする分散シミュレーションシステムが開示されている。 ∙ Since control applications that realize automatic driving are required to guarantee operation under all conditions, it is necessary to verify the operation by running in a large amount of real environments. The following methods are known as a method of reproducing a defect for efficiently solving a problem of an application that has occurred in a real environment run. In other words, it is a technique for reproducing a defect by recording data related to the surrounding environment or the like input to the application during traveling in a log, and reproducing the data from the log and inputting it to the application when a defect occurs. Patent Document 1 sets simulation means for simulating a virtual environment, one or more display means for displaying the results simulated by the simulation means in real time, and conditions for recording and saving the contents of the simulation. Record storage condition setting means, checkpoint file means for storing all the contents of the simulation in a checkpoint file based on the above conditions, and the time from the time when the checkpoint file is saved to the time when the next saving is performed Using the event log file means for saving only the difference in the simulated content changes in the event log file, the saved checkpoint file and the event log file, the simulated content at an arbitrary time is reproduced. A display unit for displaying on the display unit, and an integrated management unit for integrated management of the entire system. Distributed Simulation system characterized by comprising: means, is disclosed.
日本国特願平11-321461号公報Japanese Patent Application No. 11-32461
 特許文献1に記載されている発明では、アプリケーションが実行されるタイミングとアプリケーションにデータが入力されるタイミングの前後関係を正確に記録できない。 In the invention described in Patent Document 1, it is impossible to accurately record the context of the timing at which an application is executed and the timing at which data is input to the application.
 本発明の第1の態様による演算装置は、アプリケーションを繰り返し実行する実行部と、前記アプリケーションが所定回数実行される間隔を1つのシーケンスとし、前記アプリケーションの実行に基づきシーケンス数をカウントするカウント部と、前記アプリケーションへ入力される入力データ、および前記入力データが前記アプリケーションへ入力される時刻における前記シーケンス数の組み合わせを入力ログとして記録する記録部とを備える。
 本発明の第2の態様によるログ記録方法は、アプリケーションを繰り返し実行することと、前記アプリケーションが所定回数実行される間隔を1つのシーケンスとし、前記アプリケーションの実行に基づきシーケンス数をカウントすることと、前記アプリケーションへ入力される入力データ、および前記入力データが前記アプリケーションへ入力される時刻における前記シーケンス数の組み合わせを入力ログとして記録することとを含む。
 本発明の第3の態様によるログ記録システムは、ネットワークにより接続されるアプリ実行装置およびログ保存装置を含むログ記録システムであって、前記アプリ実行装置は、アプリケーションを繰り返し実行する実行部と、前記アプリケーションが所定回数実行される間隔を1つのシーケンスとし、前記アプリケーションの実行に基づきシーケンス数をカウントするカウント部と、前記ログ保存装置と通信を行う実行装置通信部と、前記アプリケーションへ入力される入力データ、および前記入力データが前記アプリケーションへ入力される時刻における前記シーケンス数の組み合わせを入力ログとして前記実行装置通信部を介して前記ログ保存装置に記録する記録部とを備え、前記ログ保存装置は、前記アプリ実行装置から前記入力ログを受信する保存装置通信部と、前記入力ログおよび前記入力ログを保存装置通信部が受信した時刻を関連付けて格納する記憶部とを備える。
An arithmetic device according to a first aspect of the present invention includes an execution unit that repeatedly executes an application, a count unit that counts the number of sequences based on the execution of the application, with an interval at which the application is executed a predetermined number of times as one sequence. A recording unit that records, as an input log, a combination of the input data input to the application and the number of sequences at the time when the input data is input to the application.
The log recording method according to the second aspect of the present invention includes executing an application repeatedly, setting an interval at which the application is executed a predetermined number of times as one sequence, and counting the number of sequences based on the execution of the application, Recording the combination of the input data input to the application and the sequence number at the time when the input data is input to the application as an input log.
A log recording system according to a third aspect of the present invention is a log recording system including an application execution device and a log storage device connected by a network, wherein the application execution device repeatedly executes an application, An interval at which an application is executed a predetermined number of times is defined as one sequence, a counting unit that counts the number of sequences based on the execution of the application, an execution device communication unit that communicates with the log storage device, and an input that is input to the application A recording unit that records data and a combination of the number of sequences at the time when the input data is input to the application as an input log to the log storage device via the execution device communication unit, and the log storage device includes: , The input log from the application execution device Comprising a storage device communication unit for receiving, and a storage unit for the input log and the input log storage device communication unit is stored in association with the time of reception.
 本発明によれば、アプリケーションが実行されるタイミングとアプリケーションにデータが入力されるタイミングの前後関係を正確に記録することができる。 According to the present invention, it is possible to accurately record the relationship between the timing at which an application is executed and the timing at which data is input to the application.
車両制御システム1の構成を示すブロック図The block diagram which shows the structure of the vehicle control system 1 図2(a)は出力値にタイムスタンプを含む場合のログデータ114Aのフォーマットを示す図、図2(b)は出力値にタイムスタンプを含まない場合のログデータ114Aのフォーマットを示す図2A shows a format of the log data 114A when the output value includes the time stamp, and FIG. 2B shows a format of the log data 114A when the output value does not include the time stamp. シーケンス履歴115の一例を示す図The figure which shows an example of the sequence log | history 115 センサ情報取得部101の動作を示すフローチャートFlow chart showing operation of sensor information acquisition unit 101 アプリケーション実行管理部102の動作を示すフローチャートA flowchart showing the operation of the application execution management unit 102 ログ生成部103の動作を示すフローチャートA flowchart showing the operation of the log generation unit 103 ログ再生部104の動作を示すフローチャートA flowchart showing the operation of the log reproduction unit 104 ログ記録再生装置20の動作を表すフローチャートFlow chart showing operation of log recording / reproducing apparatus 20 ログ記録モードの動作例を示す図Diagram showing an example of log recording mode operation
―実施の形態―
 以下、図1~図9を参照して、演算装置である車両制御装置の実施の形態を説明する。
-Embodiment-
Hereinafter, an embodiment of a vehicle control device which is an arithmetic device will be described with reference to FIGS.
(用語の定義)
 本実施の形態における「アプリケーション」とは、定期的に実行されるプログラムである。本実施の形態における「実行周期」とは、あるアプリケーションを実行する時間の間隔の目標値である。すなわち実際にあるアプリケーションが実行される時間の間隔は、実行周期と一致しないことがある。アプリケーションの実行のタイミングは、たとえば、アプリケーションの実行する毎に、その目標値となるまで時間経過を測っておき、その目標値に達したらアプリケーションを実行する等の方法により決まる。この場合は時間経過の計測の際のタイマーの誤差や、他の処理の負荷により遅延が入ることなどにより、目標値と実際のアプリケーションが実行される時間の間隔は一致しないことが想定される。
(Definition of terms)
An “application” in the present embodiment is a program that is periodically executed. The “execution cycle” in the present embodiment is a target value of a time interval for executing a certain application. That is, the time interval at which an application is actually executed may not match the execution cycle. The execution timing of the application is determined by a method of measuring the time until the target value is reached each time the application is executed, and executing the application when the target value is reached. In this case, it is assumed that the target value does not coincide with the actual application execution time interval due to a timer error when measuring the elapsed time or a delay due to other processing load.
 本実施の形態における「シーケンス」とは、基準となるアプリケーションが実際に実行される時刻によって区切られる長さを持った時間である。すなわち各シーケンスの開始時刻は、基準となるアプリケーションが実行された時刻である。本実施の形態における「シーケンス番号」とは、基準となるアプリケーションが実行されるごとにカウントアップされる数値である。 The “sequence” in the present embodiment is a time having a length delimited by the time when the reference application is actually executed. That is, the start time of each sequence is the time when the reference application is executed. The “sequence number” in the present embodiment is a numerical value that is counted up each time a reference application is executed.
(システム構成)
 図1は、本発明に係る演算装置である車両制御装置10を含む車両制御システム1の構成を示すブロック図である。車両制御システム1は、車両制御装置10、ログ記録再生装置20、外界センサ群30、車両センサ群40、およびアクチュエータ群50を備える。車両制御装置10、ログ記録再生装置20、外界センサ群30、車両センサ群40、およびアクチュエータ群50は、車載ネットワーク60により接続される。車両制御システム1は、たとえば、車両に搭載され、車両の周辺における走行道路や周辺車両等の障害物の状況を認知した上で車両の運転行動や車両制御を判断し、車両運動を制御することで自動運転を実現するシステムである。
(System configuration)
FIG. 1 is a block diagram showing a configuration of a vehicle control system 1 including a vehicle control device 10 which is an arithmetic device according to the present invention. The vehicle control system 1 includes a vehicle control device 10, a log recording / reproducing device 20, an external sensor group 30, a vehicle sensor group 40, and an actuator group 50. The vehicle control device 10, the log recording / reproducing device 20, the external sensor group 30, the vehicle sensor group 40, and the actuator group 50 are connected by an in-vehicle network 60. The vehicle control system 1 is mounted on a vehicle, for example, recognizes the state of an obstacle such as a traveling road or a surrounding vehicle in the vicinity of the vehicle, determines driving behavior or vehicle control of the vehicle, and controls vehicle movement. This system realizes automatic driving.
 外界センサ群30は、車両周辺の一定範囲の障害物、たとえば他車両、歩行者、物体などや、道路標識や白線などの特徴物を認識するセンサ群である。外界センサ群30は、たとえば、カメラ、レーダ、ライダ等により構成される。外界センサ群30は、検出した車両周辺の障害物や特徴物の情報、たとえば車両からの相対距離と相対角度などを、外界センサ群30や車両制御装置10が接続されている車載ネットワーク60に出力する。車両制御装置10は、この車載ネットワーク60を介して外界センサ群30からの出力結果を取得できるように構成されている。なお本実施の形態では、外界センサ群30で障害物や特徴物を検出する処理を実施する構成になっているが、外界センサ群30から出力される信号やデータを用いて車両制御装置10や他装置でこれらの検出処理を行ってもよい。 The external sensor group 30 is a sensor group for recognizing obstacles in a certain range around the vehicle, such as other vehicles, pedestrians, objects, and features such as road signs and white lines. The outside world sensor group 30 includes, for example, a camera, a radar, a lidar, and the like. The outside world sensor group 30 outputs detected information on obstacles and features around the vehicle, such as relative distance and relative angle from the vehicle, to the in-vehicle network 60 to which the outside world sensor group 30 and the vehicle control device 10 are connected. To do. The vehicle control device 10 is configured to obtain an output result from the external sensor group 30 via the in-vehicle network 60. In the present embodiment, the external sensor group 30 is configured to detect an obstacle or a feature, but the vehicle control device 10 or the like is output using signals and data output from the external sensor group 30. These detection processes may be performed by another device.
 車両センサ群40は、車両の動きに関する情報、たとえば走行速度、操舵角、アクセルの操作量、ブレーキの操作量などを検出する装置群である。車両センサ群40は、たとえば、車載ネットワーク60上に検出したこれらの状態量を出力する。車載ネットワーク60に接続された車両制御装置10や他装置は、この車載ネットワーク60を通じて、車両センサ群40から出力された各種部品の状態量を取得する。 The vehicle sensor group 40 is a device group that detects information related to vehicle movement, such as travel speed, steering angle, accelerator operation amount, brake operation amount, and the like. The vehicle sensor group 40 outputs these state quantities detected on the in-vehicle network 60, for example. The vehicle control device 10 and other devices connected to the in-vehicle network 60 acquire state quantities of various components output from the vehicle sensor group 40 through the in-vehicle network 60.
 アクチュエータ群50は、車両の動きを決定する操舵、ブレーキ、アクセル等の制御要素を制御する装置群である。アクチュエータ群50は、運転者によるハンドル、ブレーキペダル、アクセルペダル等の操舵情報や、車両制御装置10から出力される目標制御値に基づいて車両の動きを制御する。 Actuator group 50 is a device group that controls control elements such as steering, brakes, and accelerators that determine the movement of the vehicle. The actuator group 50 controls the movement of the vehicle based on steering information such as a steering wheel, a brake pedal, and an accelerator pedal by the driver, and a target control value output from the vehicle control device 10.
(車両制御装置の構成)
 車両制御装置10は、たとえばECU(Electronic Control Unit)であり、処理部100と、記憶部110と、通信部120とを備える。なお車両制御装置10の形態に特に制限はない。たとえば、車両制御装置10は、外界センサ群30に統合されてもよい。本実施の形態における車両制御装置10およびログ記録再生装置20は、ログ記録モードとログ再生モードの2つの動作モードを備える。車両制御装置10およびログ記録再生装置20は、ログ記録モードでは車両に搭載されてログを記録する。車両制御装置10およびログ記録再生装置20は、ログ再生モードでは車両制御システム1上で動作させても良いが、車両制御システム1と物理的に離間した場所、たとえば室内の机上で動作させてもよい。
(Configuration of vehicle control device)
The vehicle control device 10 is, for example, an ECU (Electronic Control Unit), and includes a processing unit 100, a storage unit 110, and a communication unit 120. The form of the vehicle control device 10 is not particularly limited. For example, the vehicle control device 10 may be integrated into the external sensor group 30. The vehicle control device 10 and the log recording / reproducing device 20 in the present embodiment have two operation modes, a log recording mode and a log reproduction mode. The vehicle control device 10 and the log recording / reproducing device 20 are mounted on the vehicle and record logs in the log recording mode. The vehicle control device 10 and the log recording / reproducing device 20 may be operated on the vehicle control system 1 in the log reproduction mode, but may be operated on a place physically separated from the vehicle control system 1, for example, an indoor desk. Good.
 記憶部110には不図示のアプリケーションAが格納されており、このアプリケーションAが本実施の形態における基準となるアプリケーションである。すなわちアプリケーションAが実行されるとシーケンス番号がカウントアップされる。詳しくは後述する。なお以下では、アプリケーションAを「アプリA」とも呼ぶ。 The storage unit 110 stores an application A (not shown), and this application A is a reference application in the present embodiment. That is, when the application A is executed, the sequence number is counted up. Details will be described later. Hereinafter, application A is also referred to as “application A”.
 処理部100は、CPU(Central Processing Unit:中央演算処理装置)、およびRAM(Random Access Memory)を備え、CPUが記憶部110に格納された不図示のプログラムをRAMに展開して実行することにより以下の機能を実現する。処理部100はその機能として、センサ情報取得部101、アプリケーション実行管理部102、ログ生成部103、およびログ再生部104を備える。処理部100は、車両制御装置10に外部から停止命令が入力されると、センサ情報取得部101、アプリケーション実行管理部102、ログ生成部103、およびログ再生部104に停止指令を出力する。 The processing unit 100 includes a CPU (Central Processing Unit) and a RAM (Random Access Memory), and the CPU expands a program (not shown) stored in the storage unit 110 to the RAM and executes the program. The following functions are realized. The processing unit 100 includes a sensor information acquisition unit 101, an application execution management unit 102, a log generation unit 103, and a log reproduction unit 104 as its functions. When a stop command is input from the outside to the vehicle control device 10, the processing unit 100 outputs a stop command to the sensor information acquisition unit 101, the application execution management unit 102, the log generation unit 103, and the log reproduction unit 104.
 センサ情報取得部101はログ記録モードのみで動作する。センサ情報取得部101は、車両の周辺に関連する周辺環境情報と、車両の動きに関連する車両センサ情報とを取得して、これらを「出力値」としてアプリケーション入出力データ群111に格納する。さらにセンサ情報取得部101は、この出力値および出力値をアプリケーション入出力データ群111に格納した時刻を関連付けてログデータバッファ114に格納する。センサ情報取得部101は、出力値を外界センサ群30および車両センサ群40から取得する。周辺環境情報とは、たとえば車両の周辺に存在する障害物の情報や、車両の周辺における道路の特徴を示す特徴物等の情報等である。なお車両の周辺に存在する障害物とは、たとえば車両の周囲を移動している他車両、自転車、歩行者等の移動体や、車両の周囲の道路上で静止している駐車車両、落下物、設置物等である。車両センサ情報とは、たとえば車両の位置、走行速度、操舵角、アクセルの操作量、ブレーキの操作量等である。センサ情報取得部101により取得された周辺環境情報と車両センサ情報は、アプリケーション入出力データ群111として記憶部110に格納される。 Sensor information acquisition unit 101 operates only in the log recording mode. The sensor information acquisition unit 101 acquires peripheral environment information related to the periphery of the vehicle and vehicle sensor information related to the movement of the vehicle, and stores these in the application input / output data group 111 as “output values”. Further, the sensor information acquisition unit 101 stores the output value and the output value in the log data buffer 114 in association with the time when the output value is stored in the application input / output data group 111. The sensor information acquisition unit 101 acquires output values from the external sensor group 30 and the vehicle sensor group 40. The surrounding environment information is, for example, information on obstacles present around the vehicle, information on features indicating road characteristics around the vehicle, and the like. Obstacles around the vehicle include, for example, other vehicles moving around the vehicle, moving objects such as bicycles and pedestrians, parked vehicles stationary on the road around the vehicle, and falling objects , Installations, etc. The vehicle sensor information is, for example, the position of the vehicle, travel speed, steering angle, accelerator operation amount, brake operation amount, and the like. The surrounding environment information and the vehicle sensor information acquired by the sensor information acquisition unit 101 are stored in the storage unit 110 as the application input / output data group 111.
 アプリケーション実行管理部102は、ログ記録モードおよびログ再生モードの両方で動作する。アプリケーション実行管理部102は、記憶部110に格納されているアプリケーション実行パラメータ群112からアプリケーションAの実行周期を読み取り、アプリケーションAをその実行周期ごとに実行させる。またアプリケーション実行管理部102は、アプリケーションAが実行されるごとにシーケンス番号を増加させ、シーケンス番号とそのシーケンスが開始された時刻を後述するシーケンス履歴115に記録する。 The application execution management unit 102 operates in both the log recording mode and the log reproduction mode. The application execution management unit 102 reads the execution cycle of the application A from the application execution parameter group 112 stored in the storage unit 110, and causes the application A to be executed for each execution cycle. The application execution management unit 102 increments the sequence number every time the application A is executed, and records the sequence number and the time when the sequence was started in a sequence history 115 described later.
 ログ生成部103は、ログ記録モードのみで動作し、ログデータバッファ114に格納される出力値、および時刻情報に基づきログデータ114Aを作成する。ログ生成部103は作成したログデータ114Aをログデータバッファ114に保存し、そのログデータ114Aを通信部120を介してログ記録再生装置20に送信する。ただしログ生成部103は、作成したログデータ114Aをログデータバッファ114に格納することなくそのままログ記録再生装置20に送信してもよい。 The log generation unit 103 operates only in the log recording mode, and creates log data 114A based on an output value stored in the log data buffer 114 and time information. The log generation unit 103 stores the created log data 114A in the log data buffer 114, and transmits the log data 114A to the log recording / reproducing apparatus 20 via the communication unit 120. However, the log generation unit 103 may transmit the created log data 114 </ b> A to the log recording / reproducing apparatus 20 as it is without storing it in the log data buffer 114.
 ログ再生部104は、ログ再生モードのみで動作し、通信部120を介してログ記録再生装置20から受信したログデータ114Aから出力値を抽出する。そしてログ生成部103は、ログデータ114Aの解析結果に基づきその出力値をアプリケーション入出力データ群111へ格納するべきタイミングを算出し、そのタイミングに出力値をアプリケーション入出力データ群111に格納する。 The log reproduction unit 104 operates only in the log reproduction mode, and extracts an output value from the log data 114A received from the log recording / reproduction device 20 via the communication unit 120. Then, the log generation unit 103 calculates the timing at which the output value should be stored in the application input / output data group 111 based on the analysis result of the log data 114A, and stores the output value in the application input / output data group 111 at that timing.
 記憶部110は、たとえば、HDD(HARD Disk Drive)やフラッシュメモリである。ただしROM(Read Only Memory)を含んで構成されてもよい。記憶部110には、処理部100がその機能を実現するために実行するプログラム、周期的に実行されるアプリケーション、車両制御装置10が動作するために必要なデータ群などが格納される。具体的には、記憶部110には、アプリケーション入出力データ群111、アプリケーション実行パラメータ群112、ログ再生パラメータ群113、ログデータバッファ114、および不図示のアプリケーションAが格納される。 The storage unit 110 is, for example, an HDD (HARD Disk Drive) or a flash memory. However, it may be configured to include a ROM (Read Only Memory). The storage unit 110 stores a program executed by the processing unit 100 to realize its function, an application executed periodically, a data group necessary for the vehicle control apparatus 10 to operate, and the like. Specifically, the storage unit 110 stores an application input / output data group 111, an application execution parameter group 112, a log reproduction parameter group 113, a log data buffer 114, and an application A (not shown).
 アプリケーション入出力データ群111には、アプリケーションAに入力される情報、およびアプリケーションAから出力される情報が格納される。具体的にはアプリケーション入出力データ群111には、車両の周辺に関連する周辺環境情報や、車両の動きに関連する車両センサ情報、およびアプリケーションAがそれらを処理した情報が格納される。ログ記録モードでは、センサ情報取得部101とアプリケーションAがアプリケーション入出力データ群111へデータを格納する。ログ再生モードでは、ログ生成部103がアプリケーション入出力データ群111へデータを格納する。 The application input / output data group 111 stores information input to the application A and information output from the application A. Specifically, the application input / output data group 111 stores peripheral environment information related to the periphery of the vehicle, vehicle sensor information related to the movement of the vehicle, and information processed by the application A. In the log recording mode, the sensor information acquisition unit 101 and the application A store data in the application input / output data group 111. In the log reproduction mode, the log generation unit 103 stores data in the application input / output data group 111.
 アプリケーション実行パラメータ群112には、車両制御装置10において実行されるアプリケーションAに関する設定情報、および車両制御装置10が次回起動時に実行すべき動作モードが格納される。アプリケーションAに関する設定情報とは、たとえば、アプリケーションAの実行周期や初回遅延時間などである。アプリケーション実行管理部102は、アプリケーション実行パラメータ群112を利用してアプリケーションの実行を管理する。アプリケーション実行パラメータ群112は、車載ネットワーク60に接続された不図示のターミナル装置から書き換え可能である。たとえばオペレーターが車両制御装置10の動作に不具合を発見すると、以下のように車両制御装置10の動作モードをログ記録モードからログ再生モードに変更する。すなわちオペレータは、ターミナル装置を用いてアプリケーション実行パラメータ群112に格納される動作モードをログ再生モードに書き換え、車両制御装置10の電源を再投入する。 The application execution parameter group 112 stores setting information related to the application A executed in the vehicle control device 10 and an operation mode that the vehicle control device 10 should execute at the next startup. The setting information related to the application A is, for example, the execution cycle of the application A and the initial delay time. The application execution management unit 102 manages application execution using the application execution parameter group 112. The application execution parameter group 112 can be rewritten from a terminal device (not shown) connected to the in-vehicle network 60. For example, when an operator finds a problem in the operation of the vehicle control device 10, the operation mode of the vehicle control device 10 is changed from the log recording mode to the log reproduction mode as follows. That is, the operator rewrites the operation mode stored in the application execution parameter group 112 to the log reproduction mode using the terminal device, and turns on the power of the vehicle control device 10 again.
 アプリケーション実行パラメータ群112に含まれる初回遅延時間とは、アプリケーションの初回の実行タイミングを決定するパラメータである。ただしここでいう初回とは、車両制御装置10が起動するごとの初回である。たとえば初回遅延時間がゼロの場合は車両制御装置10が起動した直後にそのアプリケーションが実行される。すなわちあるアプリケーションの初回遅延時間がTd、個別周期がTiの場合は、そのアプリケーションは車両制御装置10が起動した時刻をゼロとすると、Td、Td+Ti、Td+2×Ti、Td+3×Tiの時刻に実行される。ただし本実施の形態では、初回遅延時間はゼロとする。 The initial delay time included in the application execution parameter group 112 is a parameter that determines the initial execution timing of the application. However, the first time here is the first time each time the vehicle control device 10 is activated. For example, when the initial delay time is zero, the application is executed immediately after the vehicle control device 10 is activated. That is, when the initial delay time of an application is Td and the individual cycle is Ti, the application is executed at the times of Td, Td + Ti, Td + 2 × Ti, and Td + 3 × Ti, assuming that the time when the vehicle control device 10 is activated is zero. The However, in this embodiment, the initial delay time is zero.
 ログ再生パラメータ群113には、ログ再生モードにおいてログ生成部103の動作を決定するパラメータである格納遅延シーケンスが格納される。格納遅延シーケンスとは、ログ再生モードにおいて最初に通信部120が受信したログデータ114Aをアプリケーション入出力データ群111へ格納するタイミングを決定する際に使用するパラメータである。たとえば格納遅延シーケンスが「3」であり、ログ再生モードにおいてシーケンス番号が「5」の時に通信部120が最初のログデータ114Aを受信した場合は、以下のように処理が行われる。すなわち、受信時のシーケンス番号に格納遅延シーケンスを加えたシーケンス番号、すなわち5+3=8により、シーケンス番号が「8」の時に最初のログデータ114Aに含まれる出力値がアプリケーション入出力データ群111に入力される。なおログ再生パラメータ群113には格納遅延シーケンス以外のパラメータが格納されてもよい。 The log reproduction parameter group 113 stores a storage delay sequence that is a parameter for determining the operation of the log generation unit 103 in the log reproduction mode. The storage delay sequence is a parameter used when determining the timing to store the log data 114A received by the communication unit 120 first in the application input / output data group 111 in the log reproduction mode. For example, when the storage delay sequence is “3” and the communication unit 120 receives the first log data 114A when the sequence number is “5” in the log reproduction mode, the following processing is performed. That is, the sequence number obtained by adding the storage delay sequence to the sequence number at the time of reception, that is, 5 + 3 = 8, and when the sequence number is “8”, the output value included in the first log data 114A is input to the application input / output data group 111 Is done. The log reproduction parameter group 113 may store parameters other than the storage delay sequence.
 ログデータバッファ114は、ログ記録モードにおいてログデータ114Aおよびログデータ114Aを作成するための情報が格納される。ログデータ114Aを作成するための情報とは、出力値、およびその出力値がアプリケーション入出力データ群111に入力された時刻である。またログデータバッファ114は、ログ再生モードにおいて、通信部120がログ記録再生装置20から受信するログデータ114Aが一時的に保存される。 The log data buffer 114 stores log data 114A and information for creating the log data 114A in the log recording mode. The information for creating the log data 114 </ b> A is an output value and a time when the output value is input to the application input / output data group 111. The log data buffer 114 temporarily stores log data 114A received by the communication unit 120 from the log recording / reproducing device 20 in the log reproduction mode.
 図2(a)は出力値にタイムスタンプを含む場合のログデータ114Aのフォーマットを示す図、図2(b)は出力値にタイムスタンプを含まない場合のログデータ114Aのフォーマットを示す図である。ログデータ114Aは、図2(a)に示すように、出力値、シーケンス番号、後述するオフセット値、およびタイムスタンプ補正情報の4つから構成される。ただし出力値がタイムスタンプを含まない場合は、図2(b)に示すようにタイムスタンプ補正情報を備えない。なお出力値にタイムスタンプを含む場合は、タイムスタンプ補正情報を用いて後述するようにタイムスタンプを補正するので、出力値からはタイムスタンプを削除してもよい。図1に戻って説明を続ける。 FIG. 2A is a diagram illustrating a format of log data 114A when the output value includes a time stamp, and FIG. 2B is a diagram illustrating a format of log data 114A when the output value does not include a time stamp. . As shown in FIG. 2A, the log data 114A includes four values: an output value, a sequence number, an offset value described later, and time stamp correction information. However, when the output value does not include a time stamp, the time stamp correction information is not provided as shown in FIG. If the output value includes a time stamp, the time stamp may be deleted from the output value because the time stamp is corrected as described later using the time stamp correction information. Returning to FIG. 1, the description will be continued.
 記憶部110に格納されるシーケンス履歴115は、それぞれのシーケンス番号が開始された時刻を示す情報である。シーケンス履歴115はアプリケーション実行管理部102によって作成される。なおシーケンス履歴115はログデータ114Aとともにログ記録再生装置20に送信されてもよい。 The sequence history 115 stored in the storage unit 110 is information indicating the time when each sequence number is started. The sequence history 115 is created by the application execution management unit 102. The sequence history 115 may be transmitted to the log recording / reproducing apparatus 20 together with the log data 114A.
 図3は、シーケンス履歴115の一例を示す図である。図3に示す例では、アプリケーションAの実行周期が10msの場合を示しており、おおよそ10msごとにシーケンス番号が更新されているが、厳密には一定ではない。図1に戻って説明を続ける。 FIG. 3 is a diagram illustrating an example of the sequence history 115. The example shown in FIG. 3 shows a case where the execution period of the application A is 10 ms, and the sequence number is updated approximately every 10 ms, but is not strictly constant. Returning to FIG. 1, the description will be continued.
 記憶部110に格納される不図示のアプリケーションAは、アプリケーション実行管理部102により周期的に実行される。ただし図3に例示したシーケンス履歴115において示した通り、厳密には一定時間ごとではなくいくらかの時間のずれがある。アプリケーションAは、アプリケーション入出力データ群111に書き込まれた情報を即座に読み込む。すなわちアプリケーション入出力データ群111に出力値が書き込まれた時刻はアプリケーションAに出力値が入力された時刻とみなすことができる。またアプリケーションAは、アプリケーション入出力データ群111に書き込みを行う際にはログデータバッファ114に同じ情報を出力するとともにその出力時刻をログデータバッファ114に書き込む。 Application A (not shown) stored in the storage unit 110 is periodically executed by the application execution management unit 102. However, as shown in the sequence history 115 illustrated in FIG. 3, strictly speaking, there is some time lag, not every fixed time. Application A immediately reads the information written in application input / output data group 111. That is, the time when the output value is written to the application input / output data group 111 can be regarded as the time when the output value is input to the application A. In addition, when the application A writes to the application input / output data group 111, it outputs the same information to the log data buffer 114 and writes the output time to the log data buffer 114.
 通信部120は各種通信プロトコルに基づいて車両に搭載された他の装置と通信する。通信部120は、たとえば、IEEE802.3またはCAN(Controller Area Network)等の通信規格に準拠したネットワークカードを含んで構成される。なお、通信部120と車両に搭載された他の装置との間の接続形態は、Ethernetのような有線接続に限定されることはなく、Bluetooth(登録商標)や無線LAN(Local Area Network)などの近距離無線接続であってもよい。通信部120は、ログ記録モードにおいて、ログ生成部103から出力されるログデータ114Aをログ記録再生装置20に送信する。通信部120は、ログ再生モードにおいて、ログ記録再生装置20から受信するログデータ114Aをログデータバッファ114に格納するとともに、ログ再生部104にログデータ114Aの受信を伝達する。 The communication unit 120 communicates with other devices mounted on the vehicle based on various communication protocols. The communication unit 120 includes, for example, a network card compliant with a communication standard such as IEEE 802.3 or CAN (Controller Area Network). In addition, the connection form between the communication unit 120 and other devices mounted on the vehicle is not limited to wired connection such as Ethernet, but is not limited to Bluetooth (registered trademark) or wireless LAN (Local Area Network). It may be a short-range wireless connection. The communication unit 120 transmits the log data 114A output from the log generation unit 103 to the log recording / reproducing device 20 in the log recording mode. In the log reproduction mode, the communication unit 120 stores the log data 114A received from the log recording / reproducing device 20 in the log data buffer 114 and transmits the reception of the log data 114A to the log reproduction unit 104.
(ログ記録再生装置の構成)
 ログ記録再生装置20は、CPU、ROM、およびRAMを備える、たとえばECUである。ログ記録再生装置20は、ログ記録モードとログ再生モードの2つの動作モードを有し、ログ記録モードではログ記録機能を発揮しログ再生モードではログ再生機能を発揮する。ログ記録再生装置20の動作モードは、不図示のDIPスイッチの設定により、または外部からの通信により変更可能である。ログ記録機能とは、車両制御装置10から車載ネットワーク60に出力されたログデータ114Aを記録する機能である。ログ再生機能とは、ログ記録機能により記録したログデータ114Aを再生して車載ネットワーク60に出力する機能である。ログ記録再生装置20は、ログ再生時のログデータ114Aの出力間隔を、ログデータ114Aの記録時と同等となるように制御する。ログ記録再生装置20は、通信部220、ログデータ群210、およびログ記録再生部200を備える。
(Configuration of log recording / playback device)
The log recording / reproducing apparatus 20 is an ECU including a CPU, a ROM, and a RAM, for example. The log recording / reproducing apparatus 20 has two operation modes of a log recording mode and a log reproduction mode. The log recording mode exhibits a log recording function in the log recording mode and a log reproduction function in the log reproduction mode. The operation mode of the log recording / reproducing apparatus 20 can be changed by setting a DIP switch (not shown) or by communication from the outside. The log recording function is a function for recording the log data 114A output from the vehicle control device 10 to the in-vehicle network 60. The log reproduction function is a function for reproducing the log data 114A recorded by the log recording function and outputting it to the in-vehicle network 60. The log recording / reproducing apparatus 20 controls the output interval of the log data 114A at the time of log reproduction to be equal to that at the time of recording the log data 114A. The log recording / reproducing apparatus 20 includes a communication unit 220, a log data group 210, and a log recording / reproducing unit 200.
 通信部220は各種通信プロトコルに基づいて車両制御装置10とログデータ114Aのやり取りを行う。通信部220は、たとえば、IEEE802.3またはCAN(Controller Area Network)等の通信規格に対応する。なお通信部220と他の装置との間の接続形態は有線接続に限定されず、Bluetooth(登録商標)や無線LAN(Local Area Network)などの無線接続であってもよい。 The communication unit 220 exchanges the log data 114A with the vehicle control device 10 based on various communication protocols. The communication unit 220 corresponds to a communication standard such as IEEE 802.3 or CAN (Controller Area Network), for example. The connection form between the communication unit 220 and another device is not limited to a wired connection, and may be a wireless connection such as Bluetooth (registered trademark) or a wireless LAN (Local Area Network).
 ログデータ群210はたとえばHDDやフラッシュメモリである。ログデータ群210には、車両制御装置10から取得したログデータ114A、およびそのログデータ114Aの受信時刻が格納される。ログデータ群210は、ログ記録再生部200により書き込みおよび読み出しが行われる。 The log data group 210 is, for example, an HDD or a flash memory. The log data group 210 stores log data 114A acquired from the vehicle control device 10 and the reception time of the log data 114A. The log data group 210 is written and read by the log recording / reproducing unit 200.
 ログ記録再生部200は、ログ記録モードでは、車両制御装置10から受信したログデータ114Aを受信時刻を関連付けてログデータ群210へ格納する。ただし通信部220は、受信時刻に代えてログデータ114Aを受信した時間の間隔を記録してもよい。ログ記録再生部200は、ログ再生モードでは、ログデータ群210に格納されているログデータ114Aを、受信時と同一の時間間隔で車載ネットワーク60に出力する。 In the log recording mode, the log recording / reproducing unit 200 stores the log data 114A received from the vehicle control device 10 in the log data group 210 in association with the reception time. However, the communication unit 220 may record an interval of time when the log data 114A is received instead of the reception time. In the log reproduction mode, the log recording / reproducing unit 200 outputs the log data 114A stored in the log data group 210 to the in-vehicle network 60 at the same time interval as at the time of reception.
(車両制御装置の動作)
 図4~図7を参照して、車両制御装置10のセンサ情報取得部101、アプリケーション実行管理部102、ログ生成部103、およびログ再生部104の動作を説明する。なおいずれの動作も非同期に実行される。
(Operation of vehicle control device)
The operations of the sensor information acquisition unit 101, the application execution management unit 102, the log generation unit 103, and the log reproduction unit 104 of the vehicle control device 10 will be described with reference to FIGS. Both operations are executed asynchronously.
 図4は、センサ情報取得部101の動作を示すフローチャートである。以下に説明する各ステップの実行主体は車両制御装置10のCPUである。前述のとおり、センサ情報取得部101はログ記録モードのみで動作する。 FIG. 4 is a flowchart showing the operation of the sensor information acquisition unit 101. The execution subject of each step described below is the CPU of the vehicle control device 10. As described above, the sensor information acquisition unit 101 operates only in the log recording mode.
 ステップS301において、センサ情報取得部101は、センサデータを外界センサ群30と車両センサ群40から取得する。センサ情報取得部101がセンサデータを取得するタイミングには特に制限はない。外界センサ群30や車両センサ群40から車載ネットワークに出力されたセンサデータを受信したのを検知して、その度に取得してもよい。もしくは、センサ情報取得部101は外界センサ群30や車両センサ群40の動作とは関係なく、タイマーをセットして定期的にセンサデータを取得してもよい。 In step S301, the sensor information acquisition unit 101 acquires sensor data from the external sensor group 30 and the vehicle sensor group 40. There is no particular limitation on the timing at which the sensor information acquisition unit 101 acquires sensor data. The sensor data output from the external sensor group 30 or the vehicle sensor group 40 to the in-vehicle network may be detected and acquired each time. Or the sensor information acquisition part 101 may set a timer and acquire sensor data regularly irrespective of operation | movement of the external sensor group 30 or the vehicle sensor group 40. FIG.
 続くステップS302において、センサ情報取得部101は、センサデータをアプリケーション入出力データ群111へ格納する。続くステップS303において、センサ情報取得部101は、現在時刻およびステップS302において格納したセンサデータと同一のデータを組み合わせてログデータバッファ114へ格納する。続くステップS304において、車両制御装置10が停止指令を受けたか否かを判断し、停止指令を受けたと判断する場合は図4に示す動作を終了し、停止指令を受けていないと判断する場合はステップS301に戻る。 In subsequent step S <b> 302, the sensor information acquisition unit 101 stores the sensor data in the application input / output data group 111. In subsequent step S303, the sensor information acquisition unit 101 combines the current time and the same data as the sensor data stored in step S302, and stores them in the log data buffer 114. In the subsequent step S304, it is determined whether or not the vehicle control device 10 has received a stop command. If it is determined that the stop command has been received, the operation shown in FIG. The process returns to step S301.
 図5は、アプリケーション実行管理部102の動作を示すフローチャートである。以下に説明する各ステップの実行主体は車両制御装置10のCPUである。アプリケーション実行管理部102は、動作モードによらず以下に説明するように同様の動作を行う。 FIG. 5 is a flowchart showing the operation of the application execution management unit 102. The execution subject of each step described below is the CPU of the vehicle control device 10. The application execution management unit 102 performs the same operation as described below regardless of the operation mode.
 アプリケーション実行管理部102は、車両制御装置10が起動するとステップS311とステップS321の処理を並行して開始する。ステップS311では、アプリケーション実行管理部102は、シーケンス数を示す変数であるNにゼロを代入する。続くステップS312では、アプリケーションAが実行されたか否かを判断する。アプリケーションAが実行されたと判断する場合はステップS313に進み、アプリケーションAが実行されていないと判断する場合はステップS312に留まる。 The application execution management unit 102 starts the processes of step S311 and step S321 in parallel when the vehicle control device 10 is activated. In step S311, the application execution management unit 102 substitutes zero for N, which is a variable indicating the number of sequences. In a succeeding step S312, it is determined whether or not the application A is executed. If it is determined that the application A has been executed, the process proceeds to step S313. If it is determined that the application A has not been executed, the process remains in step S312.
 ステップS313ではアプリケーション実行管理部102は、変数Nをインクリメント、すなわち変数Nの値を1増加させる。続くステップS314ではアプリケーション実行管理部102は、シーケンス履歴115に現在の時刻、および変数Nの値、すなわち現在のシーケンス番号を記録する。続くステップS317ではアプリケーション実行管理部102は、停止指令を受けたか否かを判断し、停止指令を受けたと判断する場合は図5に示すフローチャートの動作を終了し、停止指令を受けていないと判断する場合はステップS312に戻る。 In step S313, the application execution management unit 102 increments the variable N, that is, increments the value of the variable N by one. In subsequent step S314, the application execution management unit 102 records the current time and the value of the variable N, that is, the current sequence number, in the sequence history 115. In subsequent step S317, the application execution management unit 102 determines whether or not a stop command has been received. If it is determined that the stop command has been received, the operation of the flowchart shown in FIG. If so, the process returns to step S312.
 ステップS321ではアプリケーション実行管理部102は、設定された初回遅延時間だけ待機し、続くステップS322ではアプリケーションAを実行する。続くステップS323ではアプリケーション実行管理部102は、アプリケーションAの実行周期だけ待機する。続くステップS324ではアプリケーション実行管理部102は、停止指令を受けたか否かを判断し、停止指令を受けたと判断する場合は図5に示すフローチャートの動作を終了し、停止指令を受けていないと判断する場合はステップS322に戻る。 In step S321, the application execution management unit 102 waits for the set initial delay time, and executes application A in the subsequent step S322. In subsequent step S323, the application execution management unit 102 waits for the execution cycle of the application A. In subsequent step S324, the application execution management unit 102 determines whether or not a stop command has been received. If it is determined that the stop command has been received, the operation of the flowchart shown in FIG. If so, the process returns to step S322.
 図6は、ログ生成部103の動作を示すフローチャートである。前述のとおり、ログ生成部103はログ記録モードにおいてのみ動作する。以下に説明する各ステップの実行主体は車両制御装置10のCPUである。ログ生成部103が動作を開始するタイミングに特に制限はない。たとえば、ログデータバッファ114にデータと格納時刻情報が格納されたことをログ生成部103が検知して、その度に動作を開始してもよいし定期的に動作を開始してもよい。 FIG. 6 is a flowchart showing the operation of the log generation unit 103. As described above, the log generation unit 103 operates only in the log recording mode. The execution subject of each step described below is the CPU of the vehicle control device 10. There is no particular limitation on the timing at which the log generation unit 103 starts operation. For example, the log generation unit 103 may detect that the data and the storage time information are stored in the log data buffer 114, and may start the operation each time or may start the operation periodically.
 ステップS341において、ログ生成部103は、ログデータバッファ114に格納された出力値と時刻の組み合わせを読み込む。続くステップS342において、ログ生成部103は、シーケンス履歴115を読み込む。続くステップS343において、ログ生成部103は、ステップS341において読み込んだ時刻がいずれのシーケンス番号に該当するかを特定する。たとえばシーケンス履歴115が図3に示すものであった場合に、時刻が「25.67」の場合には、「20.03」と「29.99」の間なのでシーケンス番号は「3」と特定される。続くステップS344において、ログ生成部103は、オフセット値を算出する。オフセット値とは、シーケンスの開始時刻からの経過時間を示す値である。たとえば時刻が「25.67」の場合には、前述のとおりシーケンス番号が「3」と特定されるので、オフセット値は「25.67」からシーケンス番号「3」の開始時刻である「20.03」を減算した「5.64」と算出される。 In step S341, the log generation unit 103 reads the combination of the output value and the time stored in the log data buffer 114. In subsequent step S342, the log generation unit 103 reads the sequence history 115. In subsequent step S343, the log generation unit 103 identifies which sequence number corresponds to the time read in step S341. For example, if the sequence history 115 is as shown in FIG. 3 and the time is “25.67”, the sequence number is specified as “3” because it is between “20.03” and “29.99”. Is done. In subsequent step S344, the log generation unit 103 calculates an offset value. The offset value is a value indicating an elapsed time from the start time of the sequence. For example, when the time is “25.67”, since the sequence number is specified as “3” as described above, the offset value is “20. It is calculated as “5.64” obtained by subtracting “03”.
 続くステップS345ではログ生成部103は、タイムスタンプ補正情報を作成する。タイムスタンプ補正情報は、受信時刻と出力値に含まれるタイムスタンプの差として算出される。たとえば「25.00」というタイムスタンプを含む出力値が時刻「25.67」とともにログデータバッファ114に格納されている場合は、タイムスタンプ補正情報は「0.67」である。ただし出力値にタイムスタンプが含まれない場合は本ステップは実行しない。続くステップS346ではログ生成部103は、出力値、シーケンス番号、およびオフセット値、およびタイムスタンプ補正情報を組み合わせてログデータ114Aを作成する。そしてログ生成部103は、作成したログデータ114Aをログデータバッファ114に格納するとともに通信部120を介してログ記録再生装置20に送信する。またログ生成部103は、作成したログデータ114Aに対応する出力値と時刻情報の組み合わせをログデータバッファ114から削除する。 In subsequent step S345, the log generation unit 103 creates time stamp correction information. The time stamp correction information is calculated as the difference between the reception time and the time stamp included in the output value. For example, when the output value including the time stamp “25.00” is stored in the log data buffer 114 together with the time “25.67”, the time stamp correction information is “0.67”. However, this step is not executed if the output value does not include a time stamp. In subsequent step S346, the log generation unit 103 generates the log data 114A by combining the output value, the sequence number, the offset value, and the time stamp correction information. Then, the log generation unit 103 stores the created log data 114 </ b> A in the log data buffer 114 and transmits it to the log recording / reproducing device 20 via the communication unit 120. In addition, the log generation unit 103 deletes the combination of the output value and time information corresponding to the created log data 114 </ b> A from the log data buffer 114.
 続くステップS347ではログ生成部103は、停止指令を受けたか否かを判断し、停止指令を受けたと判断する場合は図6に示すフローチャートの動作を終了し、停止指令を受けていないと判断する場合はステップS341に戻る。 In subsequent step S347, the log generation unit 103 determines whether or not a stop command has been received. When determining that the stop command has been received, the log generation unit 103 ends the operation of the flowchart illustrated in FIG. 6 and determines that the stop command has not been received. In this case, the process returns to step S341.
 図7は、ログ再生部104の動作を表すフローチャートである。以下に説明するフローチャートの各ステップの実行主体はログ記録再生装置20のCPUである。 FIG. 7 is a flowchart showing the operation of the log reproduction unit 104. The execution subject of each step of the flowchart described below is the CPU of the log recording / reproducing apparatus 20.
 ステップS371において、ログ再生部104は、ログ再生パラメータ群113から格納遅延シーケンスを読み込む。続くステップS372において、ログ再生部104は、1つ目のログデータ114Aを通信部120が受信したか否かを判断する。ログ再生部104は受信したと判断する場合はステップS373に進み、受信していないと判断する場合はステップS372に留まる。ステップS373ではログ再生部104は、変数Jに受信した1つ目のログデータ114Aに含まれるシーケンス番号を代入する。なおこの変数Jは、後述するステップS383において参照される。続くステップS374ではログ再生部104は、変数Nに現在のシーケンス番号、換言すると通信部120が1つ目のログデータ114Aを受信した際の時刻におけるシーケンス番号を代入する。続くステップS375ではログ再生部104は、変数MにステップS374において代入した変数Nの値と、ステップS371において読み込んだ格納遅延シーケンスとの和を代入する。 In step S371, the log reproduction unit 104 reads the storage delay sequence from the log reproduction parameter group 113. In subsequent step S372, the log reproducing unit 104 determines whether or not the communication unit 120 has received the first log data 114A. If the log reproduction unit 104 determines that it has been received, the process proceeds to step S373. If it is determined that it has not been received, the log reproduction unit 104 remains in step S372. In step S373, the log reproduction unit 104 substitutes the sequence number included in the received first log data 114A for the variable J. This variable J is referred to in step S383 described later. In subsequent step S374, the log reproduction unit 104 substitutes the current sequence number for the variable N, in other words, the sequence number at the time when the communication unit 120 received the first log data 114A. In subsequent step S375, the log reproducing unit 104 substitutes the sum of the value of the variable N substituted in step S374 and the storage delay sequence read in step S371 for the variable M.
 続くステップS376ではログ再生部104は、現在のシーケンス番号がMであるか否かを判断する。現在のシーケンス番号がMであると判断する場合はステップS377に進み、現在のシーケンス番号がMではないと判断する場合はステップS376に留まる。ステップS377ではログ再生部104は、受信した1つ目のログデータ114Aの出力値をアプリケーション入出力データ群111に格納する。ただしこの際に、ログデータ114Aにタイムスタンプ補正情報が含まれる場合は、ログデータ114Aの出力値に含まれるタイムスタンプを補正した後にアプリケーション入出力データ群111に格納する。またログ再生部104が出力値をアプリケーション入出力データ群111に格納する詳細なタイミングは、そのログデータ114Aに含まれるオフセット値に従う。たとえばオフセット値が「2.5」の場合は、そのシーケンスが開始されてから2.5ms後にその出力値をアプリケーション入出力データ群111に格納する。 In subsequent step S376, the log reproduction unit 104 determines whether or not the current sequence number is M. If it is determined that the current sequence number is M, the process proceeds to step S377. If it is determined that the current sequence number is not M, the process remains in step S376. In step S377, the log reproduction unit 104 stores the received output value of the first log data 114A in the application input / output data group 111. However, at this time, if the time stamp correction information is included in the log data 114A, the time stamp included in the output value of the log data 114A is corrected and stored in the application input / output data group 111. The detailed timing at which the log reproduction unit 104 stores the output value in the application input / output data group 111 follows the offset value included in the log data 114A. For example, when the offset value is “2.5”, the output value is stored in the application input / output data group 111 2.5 ms after the start of the sequence.
 続くステップS381ではログ再生部104は、通信部120が次のログデータ114Aを受信したか否かを判断する。次のログデータ114Aを受信したと判断する場合はステップS382に進み、次のログデータ114Aをまだ受信していないと判断する場合はステップS381に留まる。ステップS382では、ステップS381において受信を確認したログデータ(以下、「処理対象のログデータ」)114Aに含まれるシーケンス番号を変数Kに代入する。続くステップS383では、変数LにM+(K-J)の値を代入する。この演算は、1つ目のログデータ114Aをアプリケーション入出力データ群111に格納するシーケンス番号に、1つ目のログデータ114Aのシーケンス番号と処理対象のログデータ114Aのシーケンス番号の差を加えるものである。 In subsequent step S381, the log reproduction unit 104 determines whether or not the communication unit 120 has received the next log data 114A. If it is determined that the next log data 114A has been received, the process proceeds to step S382. If it is determined that the next log data 114A has not yet been received, the process remains in step S381. In step S382, the sequence number included in the log data (hereinafter, “log data to be processed”) 114A confirmed to be received in step S381 is substituted into a variable K. In the subsequent step S383, the value of M + (K−J) is substituted for the variable L. In this calculation, the difference between the sequence number of the first log data 114A and the sequence number of the log data 114A to be processed is added to the sequence number for storing the first log data 114A in the application input / output data group 111. It is.
 続くステップS384ではログ再生部104は、現在のシーケンス番号がLであるか否かを判断する。現在のシーケンス番号がLであると判断する場合はステップS385に進み、現在のシーケンス番号がLではないと判断する場合はステップS384に留まる。ステップS385では、処理対象のログデータ114Aに含まれる出力値をアプリケーション入出力データ群111に格納する。ただしこの際に、処理対象のログデータ114Aにタイムスタンプ補正情報が含まれる場合は、ログデータ114Aの出力値に含まれるタイムスタンプを補正した後にアプリケーション入出力データ群111に格納する。本ステップにおけるタイムスタンプの補正は以下のとおりである。 In subsequent step S384, the log reproduction unit 104 determines whether the current sequence number is L or not. If it is determined that the current sequence number is L, the process proceeds to step S385, and if it is determined that the current sequence number is not L, the process remains in step S384. In step S385, the output value included in the log data 114A to be processed is stored in the application input / output data group 111. However, at this time, when the time stamp correction information is included in the log data 114A to be processed, the time stamp included in the output value of the log data 114A is corrected and stored in the application input / output data group 111. The time stamp correction in this step is as follows.
 補正後のタイムスタンプの時刻をTsp、そのログデータ114Aの出力値をアプリケーション入出力データ群111に格納される時刻をTop、補正前のタイムスタンプの時刻をTsr、ログ記録モードにおいてそのログデータ114Aがアプリケーション入出力データ群111に格納された時刻をTorとすると、以下の式1が成り立つようにタイムスタンプを補正する。
  Top-Tsp=Tor-Tsr・・・・(1)
The time of the time stamp after correction is Tsp, the time when the output value of the log data 114A is stored in the application input / output data group 111 is Top, the time of the time stamp before correction is Tsr, and the log data 114A in the log recording mode. If the time stored in the application input / output data group 111 is Tor, the time stamp is corrected so that the following Expression 1 is satisfied.
Top-Tsp = Tor-Tsr (1)
 ここで、式1の右辺の値はタイムスタンプ補正情報としてログデータ114Aに格納されている。そのため、Topが明らかになればTspを算出できる。ここでTopは、ステップS383において算出したシーケンス番号Lと、ログデータ114Aに含まれるオフセット値により算出できる。ただしここでは、各シーケンスの時間はアプリケーションAの実行周期そのものとして、換言するとアプリケーションAは実行周期どおりに実行されると仮定して計算する。したがって補正後のタイムスタンプTspは、算出したTopおよびタイムスタンプ補正情報から算出可能である。 Here, the value on the right side of Equation 1 is stored in the log data 114A as time stamp correction information. Therefore, if Top is clarified, Tsp can be calculated. Here, Top can be calculated from the sequence number L calculated in step S383 and the offset value included in the log data 114A. However, here, the time of each sequence is calculated as the execution cycle itself of the application A, in other words, assuming that the application A is executed according to the execution cycle. Therefore, the corrected time stamp Tsp can be calculated from the calculated Top and time stamp correction information.
 またログ再生部104が出力値をアプリケーション入出力データ群111に格納する詳細なタイミングは、そのログデータ114Aに含まれるオフセット値に従う。詳細はステップS377において例示したとおりである。続くステップS386ではログ再生部104は、停止指令を受けたか否かを判断し、停止指令を受けたと判断する場合は図7に示すフローチャートの動作を終了し、停止指令を受けていないと判断する場合はステップS381に戻る。 The detailed timing at which the log reproduction unit 104 stores the output value in the application input / output data group 111 follows the offset value included in the log data 114A. Details are as exemplified in step S377. In subsequent step S386, the log reproducing unit 104 determines whether or not a stop command has been received. When determining that the stop command has been received, the log reproducing unit 104 ends the operation of the flowchart shown in FIG. 7 and determines that the stop command has not been received. In this case, the process returns to step S381.
(ログ記録再生装置の動作)
 図8は、ログ記録再生装置20の動作を表すフローチャートである。以下に説明するフローチャートの各ステップの実行主体はログ記録再生装置20のCPUである。
(Operation of log recording / playback device)
FIG. 8 is a flowchart showing the operation of the log recording / reproducing apparatus 20. The execution subject of each step of the flowchart described below is the CPU of the log recording / reproducing apparatus 20.
 ステップS351において、ログ記録再生部200は、動作モードが記録モードと生成モードのいずれに設定されているかを判断する。記録モードに設定されていると判断する場合はステップS352に進み、再生モードに設定されていると判断する場合はステップS356に進む。 In step S351, the log recording / reproducing unit 200 determines whether the operation mode is set to the recording mode or the generation mode. When it is determined that the recording mode is set, the process proceeds to step S352, and when it is determined that the playback mode is set, the process proceeds to step S356.
 ステップS352において、ログ記録再生部200は、車両制御装置10が接続されている車載ネットワーク60から通信部220がログデータ114Aを受信したか否かを判断する。通信部220がログデータ114Aを受信したと判断する場合はステップS353に進み、受信していないと判断する場合はステップS352に留まり次の受信を待つ。ステップS353において、ログ記録再生装置20は、通信部220が受信したログデータ114A、およびログデータ114Aの受信時刻を取得する。続くステップS354において、ログ記録再生部200は、ステップS353において取得したログデータ114Aおよび受信時刻をログデータ群210へ格納する。続くステップS355では、ログ記録再生装置20は、停止指令を受けたか否かを判断する。停止指令を受けたと判断する場合は図8に示すフローチャートの動作を終了し、停止指令を受けていないと判断する場合はステップS352に戻る。 In step S352, the log recording / reproducing unit 200 determines whether or not the communication unit 220 has received the log data 114A from the in-vehicle network 60 to which the vehicle control device 10 is connected. When the communication unit 220 determines that the log data 114A has been received, the process proceeds to step S353, and when it is determined that the log data 114A has not been received, the process stays at step S352 and waits for the next reception. In step S353, the log recording / reproducing apparatus 20 acquires the log data 114A received by the communication unit 220 and the reception time of the log data 114A. In subsequent step S354, the log recording / reproducing unit 200 stores the log data 114A and the reception time acquired in step S353 in the log data group 210. In subsequent step S355, the log recording / reproducing apparatus 20 determines whether or not a stop command has been received. When it is determined that the stop command has been received, the operation of the flowchart shown in FIG. 8 is terminated, and when it is determined that the stop command has not been received, the process returns to step S352.
 ステップS355において、ログ記録再生部200は、ログデータ群210を読み込む。続くステップS356において、ログ記録再生部200は、ログデータ群210に含まれるログデータ114Aであってまだ送信していない最も古いログデータ114Aを出力する。ただしこの際に、直前に出力したログデータ114Aとの時間間隔が、ログデータ114Aの受信時の時間間隔と同一になるように送信タイミングを調整する。たとえば、記録時にログデータ114Aが8ms、5ms、15msの間隔で順に通信部220が受信した場合には、同様に8ms、5ms、15msの間隔でログデータ114Aを車載ネットワーク60に出力する。 In step S355, the log recording / reproducing unit 200 reads the log data group 210. In subsequent step S356, the log recording / reproducing unit 200 outputs the oldest log data 114A that is the log data 114A included in the log data group 210 and has not yet been transmitted. However, at this time, the transmission timing is adjusted so that the time interval with the log data 114A output immediately before is the same as the time interval when the log data 114A is received. For example, when the communication unit 220 sequentially receives the log data 114A at intervals of 8 ms, 5 ms, and 15 ms during recording, the log data 114A is similarly output to the in-vehicle network 60 at intervals of 8 ms, 5 ms, and 15 ms.
 続くステップS357では、ログ記録再生部200は、未送信のログデータ114Aがログデータ群210に含まれるか否かを判断する。未送信のログデータ114Aが存在すると判断する場合はステップS356に戻り、全てのログデータ114Aを送信したと判断する場合は図8に示すフローチャートの動作を終了する。 In subsequent step S357, the log recording / reproducing unit 200 determines whether or not the untransmitted log data 114A is included in the log data group 210. If it is determined that there is untransmitted log data 114A, the process returns to step S356. If it is determined that all log data 114A has been transmitted, the operation of the flowchart shown in FIG.
(動作例)
 図9は、記録モードにおける車両制御装置10の動作例を示す図である。図9は図示左から右に向かって時間が経過しており、図中の目盛りは10msごとに記載している。図9に示す四角A1~A4はアプリケーションAの実行タイミングを示しており、この四角の左端のタイミングに実行されたことを示している。すなわちこの四角の幅や四角の右端は特段の意味を持たない。図中の下向き矢印は出力値P1~P4がアプリケーション入出力データ群111に入力されたタイミングを表している。図9に示す例において、アプリケーションAの実行周期は10msであるが、図9に示すように実際にはアプリケーションAが実行される間隔は10msとは必ずしも一致しない。
(Operation example)
FIG. 9 is a diagram illustrating an operation example of the vehicle control device 10 in the recording mode. In FIG. 9, time elapses from the left to the right in the figure, and the scale in the figure is shown every 10 ms. Squares A1 to A4 shown in FIG. 9 indicate the execution timing of the application A, and indicate that the application A is executed at the left end timing of the square. That is, the width of the square and the right end of the square have no special meaning. The downward arrows in the figure represent the timing at which the output values P1 to P4 are input to the application input / output data group 111. In the example shown in FIG. 9, the execution cycle of the application A is 10 ms. However, as shown in FIG. 9, the interval at which the application A is actually executed does not necessarily match 10 ms.
 シーケンス番号は、アプリケーション実行管理部102によってアプリAが実行されるごとにカウントされる。図9では丸囲みの数字がシーケンス番号を示しており、シーケンスの区切りがアプリAの実行タイミングであることが示されている。すなわち出力値P1とP2はシーケンス番号1に属し、出力値P3とP4はシーケンス番号3に属することが示されている。仮に、アプリAの実際の実行タイミングを考慮せず、アプリAの実行周期である10msごとに一律にシーケンス番号を更新した場合には、10msよりも後に発生する出力値P2はシーケンス番号2に、20msよりも前に発生する出力値P3もシーケンス番号2に属する。すなわちその場合はシーケンス番号ではアプリAの実行タイミングと出力値が入力されるタイミングとの前後関係を正しく表すことができない。 The sequence number is counted every time the application A is executed by the application execution management unit 102. In FIG. 9, the circled numbers indicate the sequence numbers, and the sequence breaks indicate the execution timing of the application A. That is, output values P1 and P2 belong to sequence number 1, and output values P3 and P4 belong to sequence number 3. If the sequence number is uniformly updated every 10 ms that is the execution cycle of the application A without considering the actual execution timing of the application A, the output value P2 generated after 10 ms is set to the sequence number 2, The output value P3 generated before 20 ms also belongs to the sequence number 2. That is, in that case, the sequence number cannot correctly represent the context between the execution timing of the application A and the timing at which the output value is input.
 ログ生成部103は、アプリケーション実行管理部102が生成したシーケンス履歴115を参照してそれぞれの出力値が属するシーケンス番号を特定する。そしてログ生成部103は、出力値P1~P4のオフセット値を、それぞれが属するシーケンスの開始時刻から経過時間として図9に示すQ1~Q4として算出する。 The log generation unit 103 refers to the sequence history 115 generated by the application execution management unit 102 and identifies the sequence number to which each output value belongs. Then, the log generation unit 103 calculates the offset values of the output values P1 to P4 as Q1 to Q4 shown in FIG. 9 as the elapsed time from the start time of the sequence to which each belongs.
 上述した実施の形態によれば、次の作用効果が得られる。
(1)車両制御装置10は、アプリケーションAを繰り返し実行するアプリケーション実行管理部102と、アプリケーションAが1回実行される間隔を1つのシーケンスとし、アプリケーションの実行に基づきシーケンス数をカウントするアプリケーション実行管理部102と、アプリケーションAへ入力される出力値、および出力値がアプリケーションAへ入力される時刻のシーケンス数の組み合わせを含む情報をログデータ114Aとして記録するログ生成部103とを備える。すなわち車両制御装置10は、アプリケーションAへデータ入力のタイミングをアプリケーションAの実行回数に基づくシーケンス数を使って記録する。そのためアプリケーションAが実行されるタイミングとアプリケーションAにデータが入力されるタイミングの前後関係を正確に記録することができる。
According to the embodiment described above, the following operational effects can be obtained.
(1) The vehicle control device 10 uses the application execution management unit 102 that repeatedly executes the application A, and the application execution management that counts the number of sequences based on the execution of the application, with the interval at which the application A is executed once as one sequence. And a log generation unit 103 that records information including a combination of an output value input to application A and a sequence number of times when the output value is input to application A as log data 114A. That is, the vehicle control apparatus 10 records the timing of data input to the application A using the number of sequences based on the number of executions of the application A. Therefore, it is possible to accurately record the relationship between the timing at which application A is executed and the timing at which data is input to application A.
(2)車両制御装置10は、入力ログに含まれるシーケンス数が示すシーケンスの開始時刻から、出力値がアプリケーションAへ入力される時刻までを示す時間をオフセット値として算出するログ生成部103(図6のステップS344)を備える。ログ生成部103は、図2(b)に示すように出力値、シーケンス番号、およびオフセット値を組み合わせて記録する。そのためアプリケーションAにデータが入力されたタイミングを詳細に記録することができる。 (2) The vehicle control device 10 calculates, as an offset value, a log generation unit 103 that calculates a time from the start time of the sequence indicated by the number of sequences included in the input log to the time when the output value is input to the application A (FIG. 6 step S344). The log generation unit 103 records the output value, sequence number, and offset value in combination as shown in FIG. Therefore, the timing when data is input to the application A can be recorded in detail.
(3)車両制御装置10は、出力値に含まれる時刻情報と出力値がアプリケーションAへ入力される時刻との差を時刻補正情報として算出するログ生成部103(図6のステップS345)を備える。ログ生成部103は、図2(a)に示すように出力値とタイムスタンプ補正情報を組み合わせて記録する。そのため出力値に含まれるタイムスタンプを補正するための情報をあわせて記録することができる。 (3) The vehicle control apparatus 10 includes a log generation unit 103 (step S345 in FIG. 6) that calculates, as time correction information, the difference between the time information included in the output value and the time when the output value is input to the application A. . The log generation unit 103 records the output value and time stamp correction information in combination as shown in FIG. Therefore, information for correcting the time stamp included in the output value can be recorded together.
(4)車両制御装置10は、ログデータ114Aを送信する通信部120を備える。ログ生成部103は、通信部120を介してログデータ114Aをログ記録再生装置20に記録する。そのため車両制御装置10の記憶領域が乏しい場合や車両制御装置10が不揮発性メモリを備えない場合であっても、車両制御装置10の動作ログを記録することができる。 (4) The vehicle control device 10 includes a communication unit 120 that transmits the log data 114A. The log generation unit 103 records the log data 114 </ b> A in the log recording / reproducing device 20 via the communication unit 120. Therefore, even when the storage area of the vehicle control device 10 is scarce or when the vehicle control device 10 does not include a nonvolatile memory, the operation log of the vehicle control device 10 can be recorded.
(5)車両制御装置10は、複数の入力ログが記録されたログ格納部と、ログ格納部に格納された複数のログデータ114Aに含まれるそれぞれの出力値を、出力値に組み合わされたシーケンス数に基づきアプリケーションAに入力するログ再生部104を備える。そのため車両制御装置10は、アプリケーションAに出力値が入力されるタイミングとアプリケーションAの実行タイミングとの前後関係を再現することができる。 (5) The vehicle control apparatus 10 includes a log storage unit in which a plurality of input logs are recorded, and a sequence in which output values included in the plurality of log data 114A stored in the log storage unit are combined with output values. A log reproduction unit 104 that inputs to the application A based on the number is provided. Therefore, the vehicle control device 10 can reproduce the front-rear relationship between the timing when the output value is input to the application A and the execution timing of the application A.
(6)車両制御装置10は、複数の入力ログが記録されたログデータバッファ114と、ログデータバッファ114に格納された複数のログデータ114Aに含まれるそれぞれの出力値を、出力値に組み合わされたシーケンス数およびオフセット値に基づきアプリケーションAに入力するログ再生部104を備える。そのため車両制御装置10はアプリケーションAに出力値が入力されたタイミングを詳細に再現することができる。これにより、たとえば不具合の再現性を向上することができる。 (6) The vehicle control apparatus 10 combines the output values included in the log data buffer 114 in which a plurality of input logs are recorded and the plurality of log data 114A stored in the log data buffer 114 into the output values. The log reproduction unit 104 is input to the application A based on the number of sequences and the offset value. Therefore, the vehicle control device 10 can reproduce the timing when the output value is input to the application A in detail. Thereby, the reproducibility of a defect can be improved, for example.
(7)車両制御装置10は、複数の入力ログが記録されたログデータバッファ114と、ログデータバッファ114に格納された複数のログデータ114Aに含まれるそれぞれの出力値に含まれる時刻情報をタイムスタンプ補正情報に基づき補正し、補正された出力値を出力値に組み合わされたシーケンス数に基づきアプリケーションAに入力するログ再生部104を備える。そのため車両制御装置10は、出力値に含まれるタイムスタンプを補正したうえで、アプリケーションAに出力値が入力されるタイミングとアプリケーションAの実行タイミングとの前後関係を再現することができる。 (7) The vehicle control device 10 sets the time information included in each output value included in the log data buffer 114 in which a plurality of input logs are recorded and the plurality of log data 114 </ b> A stored in the log data buffer 114. The log reproduction unit 104 corrects based on the stamp correction information and inputs the corrected output value to the application A based on the number of sequences combined with the output value. Therefore, the vehicle control apparatus 10 can reproduce the front-rear relationship between the timing when the output value is input to the application A and the execution timing of the application A after correcting the time stamp included in the output value.
(8)車両制御装置10の通信部120はログデータ114Aを複数受信し、通信部120が受信したログデータ114Aが記録されるログデータバッファ114と、通信部120が最初に受信するログデータ114Aである初回ログを受信した時刻から初回ログに含まれる出力値をアプリケーションAに入力する時刻までの間隔を示す情報である格納遅延サイクルが格納されるログ再生パラメータ群113と、通信部120が初回ログを受信した際のシーケンス数、および格納遅延サイクルに基づき初回ログに含まれる出力値をアプリケーションに入力するシーケンスである初回ログ入力シーケンスを決定し、初回ログ入力シーケンスに初回ログに含まれる出力値をアプリケーションAに入力するログ再生部104を備える。そのため車両制御装置10は、規定された格納遅延サイクルだけ待機してからログの再生を開始するので、いわばバッファリングを行うことになり、車載ネットワーク60に問題が生じてもログの再生への悪影響を低減させることができる。 (8) The communication unit 120 of the vehicle control device 10 receives a plurality of log data 114A, the log data buffer 114 in which the log data 114A received by the communication unit 120 is recorded, and the log data 114A that the communication unit 120 receives first. The log reproduction parameter group 113 storing the storage delay cycle, which is information indicating the interval from the time when the first log is received to the time when the output value included in the first log is input to the application A, and the communication unit 120 is the first Determine the initial log input sequence that is the sequence to input the output value included in the initial log to the application based on the number of sequences when the log is received and the storage delay cycle, and the output value included in the initial log in the initial log input sequence Is input to the application A. For this reason, the vehicle control apparatus 10 waits for the specified storage delay cycle before starting to reproduce the log, so to speak, buffering is performed, so that even if a problem occurs in the in-vehicle network 60, the log reproduction is adversely affected. Can be reduced.
(9)車両制御装置10のログ再生部104は、通信部120が受信する2つ目以降の入力ログである後続ログに含まれる出力値を、初回ログに含まれるシーケンス数、後続ログに含まれるシーケンス数、および初回ログに含まれる出力値がアプリケーションAに入力されるシーケンスに基づき決定されるシーケンスにアプリケーションAに入力する。そのため格納遅延サイクルだけ待機したのちに、後続するログデータ114Aの出力値をログ記録モード時を再現するようにアプリケーション入出力データ群111に入力することができる。 (9) The log reproduction unit 104 of the vehicle control device 10 includes the output value included in the subsequent log that is the second and subsequent input logs received by the communication unit 120 in the number of sequences included in the initial log and the subsequent log. The number of sequences to be output and the output value included in the initial log are input to the application A in a sequence determined based on the sequence input to the application A. Therefore, after waiting for the storage delay cycle, the output value of the subsequent log data 114A can be input to the application input / output data group 111 so as to reproduce the log recording mode.
―変形例―
 上述した実施の形態は以下のように変形してもよい。
(1)車両制御装置10はアプリケーション入出力データ群111を備えず、車両制御装置10は出力値をアプリケーションAに直接入力してもよい。
(2)車両制御装置10は、ログ記録モードにおいてオフセット値を記録しなくてもよい。この場合は、ログ再生モードにおいてオフセット値を用いた出力値をアプリケーション入出力データ群111に入力するタイミングの詳細な決定は行わない。
-Modification-
The embodiment described above may be modified as follows.
(1) The vehicle control device 10 may not include the application input / output data group 111, and the vehicle control device 10 may directly input an output value to the application A.
(2) The vehicle control device 10 may not record the offset value in the log recording mode. In this case, detailed determination of the timing for inputting the output value using the offset value to the application input / output data group 111 in the log reproduction mode is not performed.
(3)アプリケーションAはアプリケーション入出力データ群111に入力された情報を即座に読み込まず、必要に応じて読み込んでもよい。
(4)車両制御装置10は、アプリケーションA以外のアプリケーションも定期的に実行してもよい。この場合は、各アプリケーションの実行周期の公倍数で算出した繰り返し単位により、シーケンス数を数えることとすればよい。たとえば、実行周期がそれぞれ20msと50msの二つのアプリケーションを実行する場合は、その最小公倍数は100msであるので、100msごとを目標として実行されるアプリケーションの実行回数を基準として、シーケンス番号をカウントアップすればよい。
(5)車両制御装置10は、アプリケーションAが2回以上実行することを条件にカウントアップしてもよい。
(3) The application A may not read the information input to the application input / output data group 111 immediately, but may read it as necessary.
(4) The vehicle control device 10 may also periodically execute applications other than the application A. In this case, the number of sequences may be counted by the repetition unit calculated by the common multiple of the execution cycle of each application. For example, when two applications having an execution cycle of 20 ms and 50 ms are executed, the least common multiple is 100 ms. Therefore, the sequence number is counted up based on the number of executions of the application executed with every 100 ms as a target. That's fine.
(5) The vehicle control device 10 may count up on condition that the application A is executed twice or more.
 車両制御装置10が不図示の入出力インタフェースを備え、必要なときに入出力インタフェースと車両制御装置10が利用可能な媒体を介して、他の装置からプログラムが読み込まれてもよい。ここで媒体とは、たとえば入出力インタフェースに着脱可能な記憶媒体、または通信媒体、すなわち有線、無線、光などのネットワーク、または当該ネットワークを伝搬する搬送波やディジタル信号、を指す。また、プログラムにより実現される機能の一部または全部がハードウエア回路やFPGAにより実現されてもよい。上述した複数の変形例は、それぞれ組み合わせてもよい。上記では、種々の実施の形態および変形例を説明したが、本発明はこれらの内容に限定されるものではない。本発明の技術的思想の範囲内で考えられるその他の態様も本発明の範囲内に含まれる。 The vehicle control device 10 may include an input / output interface (not shown), and a program may be read from another device via a medium that can be used by the input / output interface and the vehicle control device 10 when necessary. Here, the medium refers to, for example, a storage medium that can be attached to and detached from the input / output interface, or a communication medium, that is, a wired, wireless, or optical network, or a carrier wave or digital signal that propagates through the network. Also, part or all of the functions realized by the program may be realized by a hardware circuit or FPGA. The plurality of modifications described above may be combined. Although various embodiments and modifications have been described above, the present invention is not limited to these contents. Other embodiments conceivable within the scope of the technical idea of the present invention are also included in the scope of the present invention.
 次の優先権基礎出願の開示内容は引用文としてここに組み込まれる。
 日本国特許出願2017年第088069号(2017年4月27日出願)
The disclosure of the following priority application is hereby incorporated by reference.
Japanese Patent Application 2017-088069 (filed April 27, 2017)
1…車両制御システム
10…車両制御装置
20…ログ記録再生装置
60…車載ネットワーク
100…処理部
101…センサ情報取得部
102…アプリケーション実行管理部
103…ログ生成部
104…ログ再生部
110…記憶部
111…アプリケーション入出力データ群
112…アプリケーション実行パラメータ群
113…ログ再生パラメータ群
114…ログデータバッファ
115…シーケンス履歴
120…通信部
200…ログ記録再生部
210…ログデータ群
DESCRIPTION OF SYMBOLS 1 ... Vehicle control system 10 ... Vehicle control apparatus 20 ... Log recording / reproducing apparatus 60 ... In-vehicle network 100 ... Processing part 101 ... Sensor information acquisition part 102 ... Application execution management part 103 ... Log generation part 104 ... Log reproduction part 110 ... Storage part 111 ... Application input / output data group 112 ... Application execution parameter group 113 ... Log playback parameter group 114 ... Log data buffer 115 ... Sequence history 120 ... Communication unit 200 ... Log recording / playback unit 210 ... Log data group

Claims (11)

  1.  アプリケーションを繰り返し実行する実行部と、
     前記アプリケーションが所定回数実行される間隔を1つのシーケンスとし、前記アプリケーションの実行に基づきシーケンス数をカウントするカウント部と、
     前記アプリケーションへ入力される入力データ、および前記入力データが前記アプリケーションへ入力される時刻における前記シーケンス数の組み合わせを入力ログとして記録する記録部とを備える演算装置。
    An execution unit that repeatedly executes the application;
    An interval at which the application is executed a predetermined number of times as one sequence, and a counting unit that counts the number of sequences based on the execution of the application;
    An arithmetic device comprising: a recording unit that records, as an input log, a combination of the input data input to the application and the number of sequences at the time when the input data is input to the application.
  2.  請求項1に記載の演算装置において、
     前記入力ログに含まれる前記シーケンス数が示すシーケンスの開始時刻から、前記入力データが前記アプリケーションへ入力される時刻までを示す時間をオフセット値として算出するオフセット算出部をさらに備え、
     前記記録部は、前記入力ログに前記オフセット値をさらに組み合わせて記録する演算装置。
    The arithmetic unit according to claim 1,
    An offset calculation unit that calculates a time from the start time of the sequence indicated by the number of sequences included in the input log to the time when the input data is input to the application as an offset value;
    The said recording part is an arithmetic unit which records the said offset value further combining in the said input log.
  3.  請求項1に記載の演算装置において、
     前記入力データに含まれる時刻情報と前記入力データが前記アプリケーションへ入力される時刻との差を時刻補正情報として算出する補正算出部をさらに備え、
     前記記録部は、前記入力ログに前記時刻補正情報をさらに組み合わせて記録する演算装置。
    The arithmetic unit according to claim 1,
    A correction calculation unit that calculates a difference between time information included in the input data and a time when the input data is input to the application as time correction information;
    The said recording part is an arithmetic unit which records the said time correction information further combining in the said input log.
  4.  請求項1に記載の演算装置において、
     前記入力ログを送信する通信部をさらに備え、
     前記記録部は、前記通信部を介して前記入力ログを他の装置に記録する演算装置。
    The arithmetic unit according to claim 1,
    A communication unit for transmitting the input log;
    The said recording part is an arithmetic unit which records the said input log on another apparatus via the said communication part.
  5.  請求項1に記載の演算装置において、
     複数の前記入力ログが記録されたログ格納部と、
     前記ログ格納部に格納された複数の前記入力ログに含まれるそれぞれの前記入力データを、前記入力データに組み合わされた前記シーケンス数に基づき前記アプリケーションに入力するログ再生部とをさらに備える演算装置。
    The arithmetic unit according to claim 1,
    A log storage unit in which a plurality of the input logs are recorded;
    An arithmetic device further comprising: a log reproduction unit that inputs each of the input data included in the plurality of input logs stored in the log storage unit to the application based on the number of sequences combined with the input data.
  6.  請求項2に記載の演算装置において、
     複数の前記入力ログが記録されたログ格納部と、
     前記ログ格納部に格納された複数の前記入力ログに含まれるそれぞれの前記入力データを、前記入力データに組み合わされた前記シーケンス数および前記オフセット値に基づき前記アプリケーションに入力するログ再生部とをさらに備える演算装置。
    The arithmetic unit according to claim 2,
    A log storage unit in which a plurality of the input logs are recorded;
    A log reproduction unit for inputting each of the input data included in the plurality of input logs stored in the log storage unit to the application based on the number of sequences combined with the input data and the offset value; Arithmetic unit provided.
  7.  請求項3に記載の演算装置において、
     複数の前記入力ログが記録されたログ格納部と、
     前記ログ格納部に格納された複数の前記入力ログに含まれるそれぞれの前記入力データに含まれる時刻情報を前記時刻補正情報に基づき補正し、補正された前記入力データを前記入力データに組み合わされた前記シーケンス数に基づき前記アプリケーションに入力するログ再生部とをさらに備える演算装置。
    In the arithmetic unit according to claim 3,
    A log storage unit in which a plurality of the input logs are recorded;
    The time information included in each of the input data included in the plurality of input logs stored in the log storage unit is corrected based on the time correction information, and the corrected input data is combined with the input data. An arithmetic device further comprising: a log reproduction unit that inputs to the application based on the number of sequences.
  8.  請求項4に記載の演算装置において、
     前記通信部は前記入力ログを複数受信し、
     前記通信部が受信した前記入力ログが記録されるログ格納部と、
     前記通信部が最初に受信する前記入力ログである初回ログを受信した時刻から前記初回ログに含まれる前記入力データを前記アプリケーションに入力する時刻までの間隔を示す情報である格納遅延時間が格納されるパラメータ格納部と、
     前記通信部が前記初回ログを受信した際の前記シーケンス数、および前記格納遅延時間に基づき前記初回ログに含まれる前記入力データを前記アプリケーションに入力する前記シーケンスである初回ログ入力シーケンスを決定し、
     前記初回ログ入力シーケンスに前記初回ログに含まれる前記入力データを前記アプリケーションに入力するログ再生部とをさらに備える演算装置。
    The arithmetic unit according to claim 4,
    The communication unit receives a plurality of the input logs,
    A log storage unit in which the input log received by the communication unit is recorded;
    Stored is a storage delay time that is information indicating an interval from the time when the communication unit first receives the initial log, which is the input log, to the time when the input data included in the initial log is input to the application. A parameter storage unit,
    Determine the initial log input sequence that is the sequence for inputting the input data included in the initial log to the application based on the number of sequences when the communication unit receives the initial log, and the storage delay time,
    A computing device further comprising: a log reproducing unit that inputs the input data included in the initial log to the application in the initial log input sequence.
  9.  請求項8に記載の演算装置において、
     前記ログ再生部は、前記通信部が受信する2つ目以降の前記入力ログである後続ログに含まれる前記入力データを、前記初回ログに含まれる前記シーケンス数、前記後続ログに含まれる前記シーケンス数、および前記初回ログ入力シーケンスに基づき決定される前記シーケンスに前記アプリケーションに入力する演算装置。
    The arithmetic unit according to claim 8,
    The log reproduction unit includes the input data included in the subsequent log that is the second and subsequent input logs received by the communication unit, the number of sequences included in the initial log, and the sequence included in the subsequent log. And an arithmetic unit for inputting to the application in the sequence determined based on the number and the initial log input sequence.
  10.  アプリケーションを繰り返し実行することと、
     前記アプリケーションが所定回数実行される間隔を1つのシーケンスとし、前記アプリケーションの実行に基づきシーケンス数をカウントすることと、
     前記アプリケーションへ入力される入力データ、および前記入力データが前記アプリケーションへ入力される時刻における前記シーケンス数の組み合わせを入力ログとして記録することとを含むログ記録方法。
    Running the application repeatedly,
    An interval at which the application is executed a predetermined number of times as one sequence, and counting the number of sequences based on the execution of the application;
    A log recording method including recording as input log a combination of input data input to the application and the number of sequences at a time when the input data is input to the application;
  11.  ネットワークにより接続されるアプリ実行装置およびログ保存装置を含むログ記録システムであって、
     前記アプリ実行装置は、
     アプリケーションを繰り返し実行する実行部と、
     前記アプリケーションが所定回数実行される間隔を1つのシーケンスとし、前記アプリケーションの実行に基づきシーケンス数をカウントするカウント部と、
     前記ログ保存装置と通信を行う実行装置通信部と、
     前記アプリケーションへ入力される入力データ、および前記入力データが前記アプリケーションへ入力される時刻における前記シーケンス数の組み合わせを入力ログとして前記実行装置通信部を介して前記ログ保存装置に記録する記録部とを備え、
     前記ログ保存装置は、
     前記アプリ実行装置から前記入力ログを受信する保存装置通信部と、
     前記入力ログおよび前記入力ログを保存装置通信部が受信した時刻を関連付けて格納する記憶部とを備えるログ記録システム。
     
    A log recording system including an application execution device and a log storage device connected via a network,
    The application execution device
    An execution unit that repeatedly executes the application;
    An interval at which the application is executed a predetermined number of times as one sequence, and a counting unit that counts the number of sequences based on the execution of the application;
    An execution device communication unit for communicating with the log storage device;
    A recording unit that records the input data input to the application and the combination of the number of sequences at the time when the input data is input to the application as an input log to the log storage device via the execution device communication unit; Prepared,
    The log storage device
    A storage device communication unit that receives the input log from the application execution device;
    A log recording system comprising: the input log; and a storage unit that stores the input log in association with a time when the storage device communication unit receives the input log.
PCT/JP2018/015183 2017-04-27 2018-04-11 Calculation device, log recording method, log recording system WO2018198770A1 (en)

Priority Applications (1)

Application Number Priority Date Filing Date Title
DE112018001810.5T DE112018001810T5 (en) 2017-04-27 2018-04-11 Arithmetic unit, log recording method, log recording system

Applications Claiming Priority (2)

Application Number Priority Date Filing Date Title
JP2017088069A JP6703960B2 (en) 2017-04-27 2017-04-27 Arithmetic device, log recording method, log recording system
JP2017-088069 2017-04-27

Publications (1)

Publication Number Publication Date
WO2018198770A1 true WO2018198770A1 (en) 2018-11-01

Family

ID=63918152

Family Applications (1)

Application Number Title Priority Date Filing Date
PCT/JP2018/015183 WO2018198770A1 (en) 2017-04-27 2018-04-11 Calculation device, log recording method, log recording system

Country Status (3)

Country Link
JP (1) JP6703960B2 (en)
DE (1) DE112018001810T5 (en)
WO (1) WO2018198770A1 (en)

Families Citing this family (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2023019077A (en) * 2021-07-28 2023-02-09 日立Astemo株式会社 On-vehicle processing apparatus

Citations (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2008226060A (en) * 2007-03-15 2008-09-25 Hitachi Information Systems Ltd Method, system and program for verifying actual equipment operation of program
JP2015225419A (en) * 2014-05-26 2015-12-14 オムロン株式会社 Simulation system

Family Cites Families (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JPH11321461A (en) 1998-05-12 1999-11-24 Art Heaven Nine:Kk Mirror drive mechanism of automobile
JP6414025B2 (en) 2015-11-13 2018-10-31 トヨタ自動車株式会社 Hybrid vehicle driving force control device

Patent Citations (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2008226060A (en) * 2007-03-15 2008-09-25 Hitachi Information Systems Ltd Method, system and program for verifying actual equipment operation of program
JP2015225419A (en) * 2014-05-26 2015-12-14 オムロン株式会社 Simulation system

Also Published As

Publication number Publication date
JP6703960B2 (en) 2020-06-03
JP2018185709A (en) 2018-11-22
DE112018001810T5 (en) 2019-12-12

Similar Documents

Publication Publication Date Title
JP7428988B2 (en) Method and system for modifying a control unit of an autonomous vehicle
EP3620959B1 (en) Image data acquisition logic of an autonomous driving vehicle for capturing image data using cameras
KR102399488B1 (en) Flexible Test Board to Improve Sensor I/O Coverage for Autonomous Driving Platform
US20190130056A1 (en) Deterministic Simulation Framework for Autonomous Vehicle Testing
KR102139172B1 (en) Autonomous vehicle simulation method in virtual environment
US20230406331A1 (en) Vehicle operation safety model test system
KR20210068335A (en) Simulation vehicle control method, device, electronic device and computer-readable storage medium
WO2018198770A1 (en) Calculation device, log recording method, log recording system
CN109683491B (en) Vehicle-mounted camera simulation system
EP3800518A1 (en) System, device and method for testing autonomous vehicles
CN115186732A (en) Intelligent driving target fusion method, device and equipment and readable storage medium
US20200150648A1 (en) Vehicle control apparatus
US11465649B2 (en) Vehicle control system, vehicle control device, and recording medium
KR20210038792A (en) Evaluation system for driving simulation and method thereof
US11157666B2 (en) Vehicle traveling simulation system, vehicle traveling simulation method and activation device
JP2021024520A (en) Driving behavior evaluation device, driving behavior evaluation method, and driving behavior evaluation program
KR20210059317A (en) Vehicle and control method thereof
CN113302589A (en) Coordination component interface control framework
US20210141710A1 (en) Development support device
CN111475659B (en) Input data creation device and input data creation method
JP7429809B2 (en) Device and method for creating scenarios for autonomous driving simulation
JP2023057798A5 (en)
KR102576733B1 (en) Method and system for simulating traffic environment based on vils linked to control platform
US20240086586A1 (en) Multi-modality data augmentation engine to improve rare driving scenario detection for vehicle sensors
WO2024009630A1 (en) Vehicle control device

Legal Events

Date Code Title Description
121 Ep: the epo has been informed by wipo that ep was designated in this application

Ref document number: 18789818

Country of ref document: EP

Kind code of ref document: A1

122 Ep: pct application non-entry in european phase

Ref document number: 18789818

Country of ref document: EP

Kind code of ref document: A1