WO2018179630A1 - 情報処理装置、情報処理方法及びプログラム - Google Patents
情報処理装置、情報処理方法及びプログラム Download PDFInfo
- Publication number
- WO2018179630A1 WO2018179630A1 PCT/JP2017/045902 JP2017045902W WO2018179630A1 WO 2018179630 A1 WO2018179630 A1 WO 2018179630A1 JP 2017045902 W JP2017045902 W JP 2017045902W WO 2018179630 A1 WO2018179630 A1 WO 2018179630A1
- Authority
- WO
- WIPO (PCT)
- Prior art keywords
- communication data
- analysis
- analysis target
- information processing
- predetermined operation
- Prior art date
- Legal status (The legal status 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 status listed.)
- Ceased
Links
Images
Classifications
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L12/00—Data switching networks
- H04L12/28—Data switching networks characterised by path configuration, e.g. LAN [Local Area Networks] or WAN [Wide Area Networks]
Definitions
- the present invention relates to a technique for analyzing communication between electronic control units mounted on a mobile object that performs automatic operation.
- ECU Electronic Control Units
- a communication network for controlling the automobile.
- the ECU performs communication via a bus serving as a transmission path in accordance with, for example, a CAN (Controller ⁇ Area Network) standard defined by ISO11898.
- CAN Controller ⁇ Area Network
- the ECU serving as a transmission node transmits a frame as a message with an ID (identifier (also referred to as a message ID)), and each ECU serving as a reception node receives a frame having an ID predetermined for each ECU.
- ID identifier (also referred to as a message ID)
- an advanced driver assistance system for example, an advanced driver assistance system (ADAS: Advanced Driver Assistance System) is known.
- ADAS function for example, parking support function, lane keeping support function, collision avoidance support function, etc.
- information acquired by a sensor connected to an in-vehicle network that is, an image taken by an in-vehicle camera, a rider (LIDAR) : Light Detection and Ranging
- LIDAR Light Detection and Ranging
- the ECU recognizes the surrounding environment of the vehicle based on the information, and controls the vehicle according to the recognition result.
- a plurality of ECUs cooperate to control the steering device to avoid a collision with an obstacle detected on the course.
- the present invention provides an information processing apparatus capable of efficiently performing processing for analysis related to communication in a mobile body or other boarding apparatus that performs automatic driving.
- the present invention also provides an information processing method and program used in the information processing apparatus.
- An information processing apparatus collects information for analysis regarding communication between a plurality of electronic control units mounted on a boarding apparatus having an automatic driving function.
- the information processing apparatus includes a receiving unit, a specifying unit, and a processing unit.
- the receiving unit receives a plurality of communication data sequentially transmitted over a network in which a plurality of electronic control units in the boarding apparatus communicate.
- the specifying unit detects a predetermined operation time when a predetermined operation is performed on the boarding device by a passenger of the boarding device, and specifies an analysis target period including the predetermined operation time.
- the processing unit receives the communication data received by the receiving unit from the analysis target communication data that is communication data received within the analysis target period, and the non-analysis communication data that is communication data received outside the analysis target period, and And a predetermined process for analyzing the communication data to be analyzed is executed based on the result of the classification.
- An information processing method is a boarding device that collects information for analysis regarding communication between a plurality of electronic control units mounted on a boarding device having an automatic driving function. It is used in an information processing apparatus mounted on the.
- the information processing method includes a receiving step, a specifying step, and a processing step.
- a receiving step a plurality of communication data sequentially transmitted through a network in which a plurality of electronic control units in the boarding apparatus communicate is received.
- a predetermined operation time which is a time when a predetermined operation is performed on the boarding device by an occupant of the boarding device, is detected, and an analysis target period including the predetermined operation time is specified.
- the communication data received in the reception step is analyzed data that is communication data received within the analysis target period, and communication data that is not analyzed that is communication data received outside the analysis target period. And a predetermined process for analyzing the communication data to be analyzed is executed based on the result of the classification.
- a program for collecting information for analysis on communication between a plurality of electronic control units mounted on a boarding device having an automatic driving function is a program for causing an information processing apparatus that has a microprocessor to be executed.
- the program causes the information processing apparatus to execute a reception step, a specific step, and a processing step.
- a reception step a plurality of communication data sequentially transmitted through a network in which a plurality of electronic control units in the boarding apparatus communicate is received.
- a predetermined operation time which is a time when a predetermined operation is performed on the boarding device by an occupant of the boarding device, is detected, and an analysis target period including the predetermined operation time is specified.
- the communication data received in the reception process is analyzed data that is communication data received within the analysis target period, and communication data that is not analyzed and is communication data received outside the analysis target period. And a predetermined process for analyzing the communication data to be analyzed is executed based on the result of the classification.
- FIG. 1 is a diagram showing an overall configuration of the in-vehicle network system according to the first embodiment.
- FIG. 2 is a diagram showing a format of a data frame defined by the CAN protocol.
- FIG. 3 is a functional block diagram of the information processing apparatus according to the first embodiment.
- FIG. 4 is a diagram illustrating a hardware configuration example of the information processing apparatus according to the first embodiment.
- FIG. 5 is a flowchart illustrating an example of predetermined information processing by the information processing apparatus according to the first embodiment.
- FIG. 6 is a functional block diagram of the information processing apparatus and the external communication apparatus according to the second embodiment.
- FIG. 7 is a diagram illustrating a hardware configuration example of the information processing apparatus and the external communication apparatus according to the second embodiment.
- FIG. 8 is a flowchart illustrating an example of predetermined information processing by the information processing apparatus according to the second embodiment.
- an attacker is a person who tries to control a vehicle against the driver's will by illegally controlling ADAS by, for example, a cyber attack on an in-vehicle network.
- a server device operated by a vehicle manufacturer (vehicle manufacturer) or the like has a message analysis function or the like in order to quickly realize security measures against a new attack on a vehicle having an automatic driving function. I will explain.
- Each vehicle manufactured by a vehicle manufacturer promptly and sequentially transmits information on messages flowing through the in-vehicle network to the server device.
- the server device performs various analyzes based on the received information.
- the analysis contents include, for example, grasping various items such as the type, period, frequency, and the like of the message flowing through the in-vehicle network, the state of the vehicle indicated by the message contents, the control contents, and the like. Based on the result of this analysis, vehicle manufacturers and the like can take measures against new attacks.
- the present inventors narrow down the target of processing for analysis such as transmission in order to reduce the amount of resources such as communication bandwidth required for analysis of information related to messages flowing through the bus of the in-vehicle network. I came up with a technology to efficiently perform the process.
- a period such as several seconds or several tens of seconds including a time when a vehicle occupant performs a predetermined operation such as a brake operation is defined as an analysis target period. Limit the target to messages received within the period, and perform processing for message analysis.
- Information related to messages that flow through the bus before and after the occurrence of an abnormality in a vehicle having an automatic driving function is highly important in terms of, for example, verification of the automatic driving function or security measures. For this reason, in this information processing method, it is assumed that the occupant feels uncomfortable due to the behavior of the vehicle even during automatic driving, and when the abnormality is detected, the occupant of the vehicle performs a predetermined operation such as a brake operation.
- the time of operation is used to specify the period to be analyzed as the time related to the occurrence of an abnormality.
- Examples of the predetermined operation include operation of a brake, that is, a braking device, operation of a steering, that is, a steering device, operation of an alarm device, and the like.
- Resources for which this increase can be suppressed include, for example, a communication band used for transmitting information from the vehicle to the server device, a capacity of a storage medium (or recording medium) for holding information in the vehicle or the server device, a vehicle or a server It is a computing resource used for various arithmetic processes related to analysis in an apparatus or the like. For example, by installing an information processing device that realizes this information processing method in a vehicle, it is possible to efficiently execute processing for analysis related to communication in the vehicle.
- the purpose of the analysis may be other than the rapid realization of the security measures against the new attack as in the above-mentioned example, and various purposes for the advancement of the autonomous driving technology, security ensuring, etc. can be assumed. Therefore, in order to analyze information related to a message flowing through the bus of the in-vehicle network, the vehicle does not necessarily have to sequentially transmit the information to an external server device or the like.
- the vehicle may store the information in a recording medium mounted on the vehicle without transmitting the information related to the message flowing through the bus.
- the information stored in the recording medium is transferred to a computer outside the vehicle. It can be used for analysis in a device such as. Moreover, it is good also as collecting and analyzing the information regarding the message which flowed on the bus
- the target is limited to messages received from the bus within the analysis target period determined based on the predetermined operation by the vehicle occupant, and transmitted to the recording medium. Performing processing for analysis such as recording is efficient and produces an effect of reducing the amount of resources necessary for processing for analysis.
- the information processing method has been described by paying attention to the vehicle, but this information processing method can also be applied to robots other than the vehicle, and can be applied to a moving body or other boarding device that can perform automatic driving with a person on it. Is possible.
- This information processing method can be executed in, for example, an information processing apparatus mounted on a boarding apparatus.
- An information processing apparatus collects information for analysis regarding communication between a plurality of electronic control units mounted on a boarding apparatus having an automatic driving function.
- the information processing apparatus includes a receiving unit, a specifying unit, and a processing unit.
- the receiving unit receives a plurality of communication data sequentially transmitted over a network in which a plurality of electronic control units in the boarding apparatus communicate.
- the specifying unit detects a predetermined operation time when a predetermined operation is performed on the boarding device by a passenger of the boarding device, and specifies an analysis target period including the predetermined operation time.
- the processing unit receives the communication data received by the receiving unit from the analysis target communication data that is communication data received within the analysis target period, and the non-analysis communication data that is communication data received outside the analysis target period, and And a predetermined process for analyzing the communication data to be analyzed is executed based on the result of the classification.
- a predetermined process for analyzing the communication data to be analyzed is executed based on the result of the classification.
- This makes it possible to suppress an increase in the amount of resources required for processing for analyzing information related to communication between ECUs in the boarding apparatus.
- data of a kind useful for analysis can be defined as communication data.
- the predetermined process is a process performed by distinguishing the analysis target communication data and the non-analysis target communication data.
- the predetermined process may be, for example, a process of deleting only the non-analysis communication data from the communication data received by the receiving unit and held in the recording medium, or the analysis target communication data is analyzed and excluded from the analysis target Processing that does not analyze communication data may be used.
- the specifying unit detects a predetermined operation time based on the communication data received by the receiving unit, and includes a period from a predetermined operation time to a time when a predetermined condition is satisfied after the predetermined operation time.
- the analysis target period may be specified.
- an operation to be performed when an occupant of a moving body or other boarding device feels uncomfortable or uneasy about the operation of the boarding device such as movement is defined as a predetermined operation.
- communication information between ECUs within a period including a predetermined operation time to a time when a predetermined condition is satisfied can be set as a processing target for analysis. For this reason, communication information in an abnormal state can be efficiently subjected to processing for analysis, and the amount of resources required for the processing can be suppressed.
- the specifying unit may specify the analysis target period so that the predetermined operation time is set as the start of the analysis target period.
- the specifying unit may specify the analysis target period so that a predetermined time before the predetermined operation is set as the start of the analysis target period.
- a predetermined time before the predetermined operation is set as the start of the analysis target period.
- a buffer that can store communication data received by the receiving unit may be further included.
- the specifying unit analyzes the communication data stored in the buffer at the time of a predetermined operation so that the earliest received communication data stored in the buffer is received by the receiving unit. It is good also as specifying an object period.
- the receiving unit sets the communication data to be stored as the overwrite target in order from the communication data stored earliest when there is no free space in the buffer. It may be overwritten. Accordingly, when the received communication data is temporarily stored in the buffer, the communication data remaining in the buffer when the passenger of the boarding apparatus performs a predetermined operation can be set as a processing target for analysis. .
- the specifying unit may specify the analysis target period so that the time when the predetermined condition is satisfied after the predetermined operation is set as the end of the analysis target period.
- the predetermined condition may be satisfied when a predetermined time has elapsed since the predetermined operation, or may be satisfied when a predetermined amount of communication data is received since the predetermined operation. Accordingly, if the predetermined condition is appropriately determined in combination with the predetermined operation in view of the importance of the communication data in the analysis, it is possible to efficiently perform the process for the analysis.
- the boarding apparatus may be a moving body.
- the boarding apparatus may have a braking device that suppresses the movement of the boarding apparatus in accordance with a predetermined operation.
- the predetermined condition may be satisfied when the boarding apparatus stops.
- the ECU within a period including the time from when the occupant who felt uncomfortable or uneasy about the movement of the moving body having the automatic driving function operates the braking device to suppress the movement until the moving body stops It is possible to separate the communication information between them from the communication information outside the period, and it is possible to efficiently narrow down the processing target for analysis to information related to the abnormal state.
- the boarding apparatus may be a moving body.
- the boarding apparatus may have a braking device that suppresses the movement of the boarding apparatus until a specific operation is performed after a predetermined operation is performed.
- the specifying unit may detect a specific operation time that is a time when the specific operation is performed subsequent to the predetermined operation. Further, the predetermined condition may be satisfied during a specific operation.
- the ECU within a period including the time from when the occupant who felt uncomfortable or uneasy about the movement of the moving body having the automatic driving function operated the braking device to suppress the movement until the operation was stopped It is possible to separate the communication information between them from the communication information outside the period, and it is possible to efficiently narrow down the processing target for analysis to information related to the abnormal state.
- the boarding apparatus may be a moving body.
- the boarding apparatus may have a steering apparatus that changes the moving direction of the boarding apparatus in accordance with an operation.
- the predetermined operation may be an operation on the steering device.
- the boarding device may have an alarm device that issues an alarm to the outside of the boarding device in response to an operation.
- the predetermined operation may be an operation on the alarm device.
- the processing unit includes, as a predetermined process, analysis information including analysis target communication data without including analysis target communication data in order to cause a device external to the boarding apparatus to perform analysis on the analysis target communication data. May be transmitted to the outside of the boarding apparatus.
- information for analysis such as communication data to be transmitted to an external device having an analysis function or the like can be narrowed down to information related to the analysis target communication data. Therefore, the communication band necessary for transmission can be narrowed down. It becomes possible to keep it small compared with the case where it does not. For this reason, it becomes possible to efficiently analyze information related to communication in the network of the boarding apparatus with an external apparatus.
- the processing unit includes an analysis including the analysis target communication data without including the non-analysis target communication data in the predetermined recording medium for recording the analysis information used for the analysis of the analysis target communication data. It is also possible to perform processing for recording the business information. As a result, the analysis information such as communication data to be recorded on the predetermined recording medium can be narrowed down to the information related to the analysis target communication data, so that the amount of data recorded in the recording medium per unit time is not reduced. Can be kept small. For this reason, an increase in the capacity of the recording medium necessary for recording for analysis is suppressed.
- the boarding apparatus may be a vehicle.
- the plurality of electronic control units exchange frames including communication data via a bus in accordance with a CAN (Controller (Area Network) protocol, the information processing apparatus is connected to the bus, and the receiving unit receives communication data from the bus.
- the included frames may be received sequentially. This makes it possible to reduce the amount of resources required for processing for analyzing information related to communication between the ECUs in the vehicle via the bus.
- the receiving unit may receive the content of the data field of the data frame in which the content of the ID field satisfies the specific condition as communication data.
- a specific message ID corresponding to a specific type of data useful for analysis among the types of data determined by the in-vehicle network system can be determined so as to satisfy a specific condition.
- the communication data whose contents are limited can be classified in terms of time using the specified analysis target period and the processing target can be narrowed down, so that the processing for analysis can be performed efficiently.
- An information processing method is a boarding device that collects information for analysis regarding communication between a plurality of electronic control units mounted on a boarding device having an automatic driving function. It is used in an information processing apparatus mounted on the.
- the information processing method includes a receiving step, a specifying step, and a processing step.
- a receiving step a plurality of communication data sequentially transmitted through a network in which a plurality of electronic control units in the boarding apparatus communicate is received.
- a predetermined operation time which is a time when a predetermined operation is performed on the boarding device by an occupant of the boarding device, is detected, and an analysis target period including the predetermined operation time is specified.
- the communication data received in the reception step is analyzed data that is communication data received within the analysis target period, and communication data that is not analyzed that is communication data received outside the analysis target period. And a predetermined process for analyzing the communication data to be analyzed is executed based on the result of the classification. This makes it possible to suppress an increase in the amount of resources required for processing for analyzing information related to communication between ECUs in the boarding apparatus.
- a program for collecting information for analysis on communication between a plurality of electronic control units mounted on a boarding device having an automatic driving function is a program for causing an information processing apparatus that has a microprocessor to be executed.
- the program causes the information processing apparatus to execute a reception step, a specific step, and a processing step.
- a reception step a plurality of communication data sequentially transmitted through a network in which a plurality of electronic control units in the boarding apparatus communicate is received.
- a predetermined operation time which is a time when a predetermined operation is performed on the boarding device by an occupant of the boarding device, is detected, and an analysis target period including the predetermined operation time is specified.
- the communication data received in the reception process is analyzed data that is communication data received within the analysis target period, and communication data that is not analyzed and is communication data received outside the analysis target period. And a predetermined process for analyzing the communication data to be analyzed is executed based on the result of the classification.
- the microprocessor of the information processing apparatus executes the program, whereby predetermined information processing is executed. This makes it possible to suppress an increase in the amount of resources required for processing for analyzing information related to communication between ECUs in the boarding apparatus.
- FIG. 1 is a diagram illustrating an overall configuration of an in-vehicle network system 10 according to the first embodiment.
- the in-vehicle network system 10 is an example of a network communication system that performs communication according to the CAN protocol, and includes an in-vehicle network in the vehicle 30.
- the vehicle 30 is an automobile, for example, and is equipped with various devices such as an actuator, a control device, and a sensor.
- the in-vehicle network system 10 includes a bus 40, an information processing device 100, ECUs 20a to 20f, an engine 31, a braking device 32, a steering device 33, and an alarm device 34. Although omitted in FIG. 1, the in-vehicle network system 10 may include a number of ECUs in addition to the ECUs 20a to 20f, but here, for convenience of explanation, the explanation will be made with a focus on the ECUs 20a to 20f.
- Each ECU is a device that includes, for example, a processor (that is, a microprocessor), a digital circuit such as a memory, an analog circuit, and a communication circuit in terms of hardware.
- the memory is a ROM (read-only memory), a RAM (random access memory), or the like, and can store a program (that is, a computer program) executed by the processor.
- Each ECU implement
- Each ECU is connected to the bus 40 to constitute an in-vehicle network.
- Each ECU can be connected to devices such as an actuator, a control device, and a sensor.
- the ECUs 20a to 20d are connected to an engine 31, a braking device 32, a steering device 33, and an alarm device 34, respectively.
- the engine 31 controls the number of revolutions of the engine by opening and closing a throttle valve, for example, according to an accelerator pedal operation or the like.
- the braking device 32 controls the brake actuator in accordance with, for example, the operation of the brake pedal and suppresses the speed of the vehicle 30.
- the steering device 33 controls a steering angle actuator or the like according to, for example, operation of the steering wheel, and changes the traveling direction of the vehicle 30, that is, the moving direction.
- the alarm device 34 is, for example, a device that performs control to turn on an emergency flashing indicator lamp to notify the outside of the vehicle 30 and may be a device that performs control to sound a horn.
- Each ECU sends and receives messages via the bus 40 according to the CAN protocol. For example, a message including data based on information acquired by the sensor is periodically transmitted from the ECU connected to the sensor to the bus 40. The message transmission period is, for example, several hundred milliseconds. Further, the ECU connected to the actuator in the vehicle 30 determines and controls the control content of the actuator based on the message received from the bus 40.
- the ECU 20e and the ECU 20f are ECUs having an automatic driving function as an ADAS function.
- the ECU 20e realizes an automatic driving control function
- the ECU 20f realizes an automatic steering function.
- the ECU 20e detects, for example, that the driver of the vehicle 30 has started an automatic driving operation, has ended an automatic driving operation, etc., and determines the start and end of the automatic driving.
- the ECU 20e The control contents for automatic driving are determined according to the state, and various messages for instructing the control are transmitted to the bus 40.
- the ECU 20f receives, for example, a message relating to a control instruction from the ECU 20e, a message including data based on information acquired by sensors from other ECUs, and the like. Then, the ECU 20f determines the state of the vehicle 30 from the received message and the like, determines instruction information such as a steering angle for automatic steering according to the state of the vehicle 30, and transmits a message indicating the instruction information to the bus 40. To do.
- the message indicating the instruction information has a predetermined message ID so that the ECU 20c receives and controls the steering device 33 according to the instruction information.
- Several ECUs that operate in response to a message from the ECU 20e may exist in addition to the ECU 20f.
- the information processing apparatus 100 is an apparatus that collects information related to communication data transmitted and received by the ECUs 20a to 20f and performs processing for analysis.
- the information processing apparatus 100 includes hardware similar to the ECUs 20a to 20f, for example, and receives messages from the bus 40 according to the CAN protocol.
- the information processing apparatus 100 has a function of narrowing down the processing target by separating the communication data included in the message received from the bus 40 into communication data to be analyzed and communication data other than that.
- the information processing apparatus 100 has an external communication function for communicating with a device outside the vehicle 30 via a wide area network such as the Internet.
- the information processing apparatus 100 transmits information based on communication data narrowed down as a processing target from communication data received from the bus 40 to a server apparatus outside the vehicle 30 having an analysis function.
- the server device is, for example, a computer that receives, collects, and analyzes information related to messages transmitted / received in each in-vehicle network of a plurality of vehicles 30 of the same type from each vehicle 30.
- each ECU exchanges a frame such as a data frame as a message according to the CAN protocol.
- Frames in the CAN protocol include a data frame, a remote frame, an overload frame, and an error frame.
- a description will be given focusing on a data frame as a message including communication data.
- FIG. 2 is a diagram showing a data frame format defined by the CAN protocol.
- a data frame in a standard ID format defined by the CAN protocol is shown.
- the data frame includes an SOF (Start Of Frame), ID field, RTR (Remote Transmission Request), IDE (Identifier Extension), reserved bit “r”, DLC (Data Length Code), data field, CRC (Cyclic Redundancy Check) sequence.
- the ID field is a field for storing an ID (also referred to as a message ID) that is a value indicating the type of data, which is composed of 11 bits.
- ID also referred to as a message ID
- a frame having a small ID is designed to have a high priority in order to perform communication arbitration in this ID field.
- the data field is a field for storing data having a maximum of 64 bits.
- Each ECU that transmits a message stores data of a predetermined type as a specification of the in-vehicle network system 10 in the data field, and stores a message ID predetermined corresponding to the type of data in the ID field.
- a data frame is constructed and transmitted.
- a message ID used for a message, a configuration of corresponding data, and the like are determined in advance by a vehicle manufacturer or the like.
- FIG. 3 is a functional block diagram illustrating the configuration of the information processing apparatus 100.
- the information processing apparatus 100 includes a receiving unit 110, a buffer 120, a specifying unit 130, a processing unit 140, and a recording medium 150.
- the processing unit 140 includes an external communication unit 141.
- the information processing apparatus 100 has, in terms of hardware, a communication circuit for communicating with, for example, the recording medium 150 and an external apparatus located outside the vehicle 30 in addition to the hardware configuration of the ECU.
- FIG. 4 shows an exemplary hardware configuration of the information processing apparatus 100.
- the information processing apparatus 100 includes a processor (microprocessor) 101, a memory 102, a CAN communication I / F (interface) 103, an external communication I / F 104, and a recording medium 150 in terms of hardware. .
- the memory 102 is a ROM, a RAM, or the like, and can store a program executed by the processor 101.
- the memory 102 may include a non-volatile memory.
- the CAN communication I / F 103 is a communication circuit such as a CAN controller for performing communication according to the CAN protocol.
- the external communication I / F 104 is a wireless communication circuit for communicating with a network outside the vehicle 30.
- the recording medium 150 is, for example, a nonvolatile memory such as a memory card, a hard disk, or the like.
- the receiving unit 110 is realized by a CAN communication I / F 103, a processor 101 that executes a program, and the like.
- the receiving unit 110 sequentially receives communication data related to communication between ECUs from the bus 40 and stores the data in the buffer 120.
- Communication data received by the receiving unit 110 is included in a message that flows on the bus 40, that is, a data frame.
- the communication data is, for example, the contents of the data field of the data frame, and may further include other information in the data frame such as a message ID.
- the receiving unit 110 may receive all messages appearing on the bus 40, or only messages having a specific message ID, that is, only messages whose ID field content satisfies a specific condition. It's also good.
- a message whose contents in the ID field satisfy a specific condition is, for example, a message having a message ID included in the received ID list.
- the reception unit 110 uses a reception ID list as a reception target for a plurality of messages including communication data of a type corresponding to a specific message ID in a data field.
- message IDs of messages including communication data of a kind useful for analysis as the contents of the data field are listed.
- the types of communication data that are useful for analysis include, for example, vehicle speed, speed change gear position, estimated gear, axle angular speed, accelerator pedal position, engine speed, driver demand torque, engine maximum torque, fuel consumption rate, The throttle valve position, braking level, steering angle, lateral acceleration, yaw rate, and the like.
- the buffer 120 is composed of a storage medium, for example, a region of the memory 102 or the like.
- the buffer 120 stores the communication data received by the receiving unit 110 at least temporarily. For example, each time a message including communication data is received from the bus 40, the reception unit 110 sets the received communication data as a storage target in the buffer 120. If there is an empty area in the buffer 120, the communication data to be stored is buffered. 120. When there is no free space in the buffer 120, for example, the receiving unit 110 sequentially overwrites the communication data stored in the buffer 120 with the communication data to be stored as the overwrite target in order.
- the specifying unit 130 is realized by the processor 101 or the like that executes a program.
- the specifying unit 130 detects a predetermined operation time when a predetermined operation is performed on the vehicle 30 by an occupant of the vehicle 30, and specifies an analysis target period including the predetermined operation time.
- the predetermined operation is, for example, an operation of the braking device 32 such as depressing a brake pedal, and is a predetermined operation.
- the predetermined operation may be an operation of the steering device 33 such as turning the steering wheel, etc., an operation of the alarm device 34, for example, an operation interface for lighting an emergency flashing indicator light, or an operation interface for sounding a horn. It may be an operation.
- the vehicle 30 When a predetermined operation is performed, the vehicle 30 performs an operation according to the predetermined operation. For example, when the brake device 32 is operated, the movement of the vehicle 30 is suppressed, that is, the vehicle 30 decelerates, and when the steering device 33 is operated, the vehicle 30 changes its traveling direction and the alarm device 34 is operated. Then, the vehicle 30 issues an alarm to the outside of the vehicle 30 by light, sound, or the like.
- the detection by the specifying unit 130 at the time of the predetermined operation may be performed by any method, for example, by referring to the communication data received from the bus 40. For example, a message including communication data indicating that a predetermined operation has been performed is transmitted by the ECU that controls the vehicle 30 in response to the predetermined operation.
- the identification unit 130 repeatedly confirms the contents of the buffer 120, confirms that communication data indicating that a predetermined operation has been performed is stored in the buffer 120, or at the time of confirmation or the communication data is received by the receiving unit.
- the time received by 110 is treated as a predetermined operation time.
- the specifying unit 130 specifies the analysis target period so as to include, for example, a period from a predetermined operation time to a time when a predetermined condition is satisfied after the predetermined operation time.
- the predetermined condition is satisfied, for example, when a predetermined time (for example, several seconds) has elapsed since the predetermined operation. Further, the predetermined condition may be satisfied when, for example, a predetermined amount of communication data is received from the bus 40 after a predetermined operation. The predetermined condition may be satisfied when the vehicle 30 stops.
- the predetermined condition is a braking device such as stopping the depression of the brake pedal after the predetermined operation. It may be established at the time of a specific operation that is a time when a specific operation that is an operation for releasing the braking by 32 is performed.
- the specifying unit 130 sets the analysis target period so that the predetermined operation time is the start of the analysis target period and the predetermined condition is satisfied after the predetermined operation is the end of the analysis target period. Identify. Further, the specifying unit 130 sets a period before the predetermined operation (for example, several seconds, several tens of seconds, etc.) as the start of the analysis target period, and the time when the predetermined condition is satisfied after the predetermined operation as the end of the analysis target period. As such, the analysis target period may be specified. In addition, instead of setting the predetermined operation time as the start of the analysis target period, the specifying unit 130 receives the communication data stored in the buffer 120 earliest among the communication data stored in the buffer 120 at the predetermined operation time. The analysis target period may be specified with the time received at 110 as the start of the analysis target period.
- the analysis target period specified by the specifying unit 130 is used in the processing unit 140 to separate communication data to be processed for analysis from communication data not to be processed for analysis.
- the processing unit 140 includes an external communication unit 141 that communicates with a server device that is an external device outside the vehicle 30.
- the processing unit 140 is realized by the processor 101 that executes a program, the external communication I / F 104, and the like.
- the processing unit 140 analyzes the communication data received by the receiving unit 110, the analysis target communication data that is communication data received within the analysis target period specified by the specifying unit 130, and the communication received outside the analysis target period.
- the data is classified into non-analysis communication data that is data, and predetermined processing for analysis of the analysis target communication data is executed based on the classification result.
- the start and end of the analysis target period are included in the analysis target period.
- the predetermined process for the analysis is an analysis process or a process useful for the analysis, and is a predetermined process performed by distinguishing between the analysis target communication data and the non-analysis target communication data.
- the processing unit 140 performs communication data received by the receiving unit 110 and stored in the buffer 120 in order to cause the server device outside the vehicle 30 to analyze the analysis target communication data as the predetermined process for analysis.
- the external communication unit 141 performs processing for transmitting the analysis information including the analysis target communication data without including the non-analysis target communication data to the server device.
- the analysis information is information used for analysis of the analysis target communication data, for example, a so-called communication log.
- the analysis information includes the content of the analysis target communication data, and may further include, for example, information indicating when the analysis target communication data is received by the receiving unit 110, information indicating the reception frequency of the analysis target communication data, and the like.
- the analysis information may include information such as a message ID included in a message including the analysis target communication data received by the reception unit 110. For example, every time the reception unit 110 receives a message including communication data from the bus 40, if the communication data is stored in the buffer 120 with information such as reception time, reception frequency, message ID, and the like, The processing unit 140 can acquire the information from the buffer 120.
- the analysis information may include a digital signature based on the vehicle 30 identification information or the like. In the analysis information, data conversion such as compression or encryption may be performed on the communication data to be analyzed.
- the transmission of the analysis information to the server device by the external communication unit 141 may be performed using any communication method.
- a transmission unit, a transmission timing, and the like can be arbitrarily determined.
- the external communication unit 141 sequentially transmits one piece of communication data and information indicating the time when the communication data is received as one transmission unit of analysis information, for each one or a predetermined number of transmission units. It is also good to do.
- the server device sequentially receives and collects information for analysis, and performs analysis by, for example, statistical processing, multivariate analysis, etc. based on the information for analysis.
- analysis for example, it may be possible to verify whether or not the vehicle 30 has been appropriately automatically driven, detect a security problem in the in-vehicle network, and formulate security measures.
- the processing unit 140 records the analysis information including the analysis target communication data without including the non-analysis communication data in the recording medium 150 for recording the analysis information. Processing may be performed.
- the predetermined process for analysis may be other processes. Other specific examples of the predetermined process for analysis include the following process.
- the processing unit 140 temporarily stores all communication data received by the receiving unit 110 in a recording medium, and deletes only non-analysis communication data from the recording medium. Further, for example, the processing unit 140 performs analysis by performing information processing such as a predetermined calculation for analysis only on the communication data to be analyzed among the communication data received by the receiving unit 110, and the analysis This is a process for outputting the result. In addition, for example, the processing unit 140 determines whether each analysis target communication data is in an abnormal state by analyzing only the analysis target communication data among the communication data received by the reception unit 110, This is processing for transmitting the analysis information related to the analysis target communication data whose determination result is abnormal to the server device outside the vehicle 30 by the external communication unit 141.
- FIG. 5 is a flowchart illustrating an example of predetermined information processing in the information processing apparatus 100.
- the information processing apparatus 100 starts the predetermined information processing shown in FIG. 5 when, for example, it is detected that an automatic driving start operation is performed by an occupant of the vehicle 30 and the automatic driving is started by the ECU 20e of the vehicle 30 or the like.
- the operation is stopped when it is detected that the automatic operation has been stopped by the ECU 20e of the vehicle 30 and the like.
- the information processing apparatus 100 may detect the start and stop of automatic driving by any method.
- the ECU 20e may transmit a message with a predetermined message ID at the start and end of automatic driving, and the information processing apparatus 100 may detect the start and stop of automatic driving by receiving the message.
- the receiving unit 110 will be described using an example in which all messages appearing on the bus 40 are received.
- the information processing apparatus 100 receives the message when the message appears on the bus 40 by the receiving unit 110 (Yes in step S11).
- the receiving unit 110 stores the communication data (for example, the contents of the data field) related to the received message in the buffer 120 with a message ID, information indicating the reception time, and the like, for example (step S12). If the message is not received in step S11 (No in step S11), the receiving unit 110 skips the process in step S12.
- the information processing apparatus 100 detects a predetermined operation time when the predetermined operation is performed by the specifying unit 130 (Step S14). .
- the information processing apparatus 100 detects from the contents of the buffer 120 that a message including communication data indicating that a predetermined operation has been performed is received by the receiving unit 110, and determines when the communication data is received. Detect as operation.
- the predetermined operation is an operation of operating the braking device 32 of the vehicle 30 such as depression of a brake pedal.
- the braking device 32 suppresses the movement of the vehicle 30 after a predetermined operation such as depression of the brake pedal is performed until a specific operation such as stopping the depression is performed.
- the identifying unit 130 identifies the start of the analysis target period based on the predetermined operation (step S15).
- the specifying unit 130 specifies, for example, a predetermined operation time as the start of the analysis target period.
- step S13 If the predetermined operation is not performed in step S13 (No in step S13), the specifying unit 130 skips the processes in steps S14 to S15.
- the specifying unit 130 of the information processing apparatus 100 determines that the analysis target period is satisfied if the predetermined condition for the end of the analysis target period is satisfied in the state where only the start of the division target period is specified (Yes in step S16). Is determined (step S17).
- the predetermined condition is satisfied when the vehicle 30 stops.
- the specifying unit 130 confirms in step S16 that communication data indicating that the vehicle speed of the vehicle 30 has changed to zero after the predetermined operation is stored in the buffer 120, for example, in step S17.
- the reception time of the communication data is specified as the end of the analysis target period.
- the detection of the stop of the vehicle 30 may be performed by any method.
- the predetermined condition in step S16 may be established, for example, when a specific operation is performed. If the predetermined condition is not satisfied in step S16 (No in step S16), the specifying unit 130 skips the process in step S17.
- the processing unit 140 of the information processing apparatus 100 determines whether or not communication data received by the receiving unit 110 during the analysis target period and not yet recorded in the recording medium 150 is stored in the buffer 120.
- the determination is made (step S18) and the determination is affirmative (Yes in step S18)
- the communication data received within the analysis target period that is, the analysis information including the analysis target communication data is recorded in the recording medium 150.
- Step S19 When there is no unrecorded communication data within the analysis target period in step S18 (No in step S18), the processing unit 140 skips the process in step S19.
- the processing unit 140 determines whether or not communication data received by the receiving unit 110 within the analysis target period and not yet transmitted is stored in the buffer 120 (step S20). When the determination is made (Yes in step S20), the communication data received within the analysis target period, that is, the analysis information including the analysis target communication data is transmitted to the server device by the external communication unit 141 (step S21). In step S20, when there is no untransmitted communication data within the analysis target period (No in step S20), the processing unit 140 skips the process in step S21.
- step S18 and step S20 a negative determination (No in step S18 and step S20) is made if the start of the analysis target period has not already been specified in step S15.
- Communication data received while the start of the analysis target period has already been specified in step S15 and the end of the analysis target period has not been specified in step S17 can be treated as communication data received within the analysis target period. .
- step S17 If the end of the analysis target period has already been specified in step S17 at the time of the determination in step S18 and step S20, the processing unit 140 converts the communication data received up to that end within the analysis target period.
- the communication data received after the end of the period is treated as not the communication data received within the analysis target period.
- processing unit 140 may cause the external communication unit 141 to further transmit analysis information including the analysis target communication data recorded in the recording medium 150 to the server device in step S19, and omit steps S20 and S21. .
- a flag indicating whether or not the data has been recorded or transmitted has been attached to the buffer 120 for each communication data, and the processing unit 140 may check and update the flag.
- the processing unit 140 for example, when the analysis information corresponding to the communication data is transmitted to the server device or when the communication data is read from the buffer 120 for the transmission or the like, from the buffer 120
- the communication data may be deleted.
- the analysis target communication data classified in relation to the operation of the occupant of the vehicle 30 among the communication data related to the messages sent and received by the ECUs 20 a to 20 f via the bus 40 in the vehicle 30 having the automatic driving function Only the target of processing for analysis. Thereby, it is possible to efficiently perform processing for analysis.
- the information processing apparatus 100 transmits information for analysis related to communication data to a server apparatus having an external analysis function as processing for analysis related to communication between ECUs.
- the communication data is narrowed down to the analysis target communication data received from the bus 40 within the analysis target period starting from a time when a predetermined operation is performed by the occupant among the communication data flowing through the bus 40. Due to this narrowing down, the amount of analysis information transmitted to the server device for analysis of communication in the vehicle 30 can be kept relatively small, so the communication band necessary for sending analysis information is kept relatively small. It is done.
- the information processing apparatus 100 records analysis information related to the analysis target communication data among the communication data in the recording medium 150. Thereby, the data amount of the analysis information recorded on the recording medium 150 can be suppressed to be smaller than that in the case of recording the analysis information related to all the communication data flowing through the bus 40.
- the processing unit 140 analyzes only the communication data to be analyzed among the communication data received by the receiving unit 110 by performing information processing such as calculation for analysis, all the communication data is processed. Compared to the target case, the computational resources such as the required amount of computation can be kept small.
- the information processing apparatus 100 connected to the bus 40 includes an external communication unit 141 that is realized by an external communication I / F 104 or the like that communicates with an external device of the vehicle 30.
- an example is shown.
- the information processing apparatus which is a partial modification of the information processing apparatus 100 does not have the external communication I / F 104 but is connected to the bus 40 and connected to the external communication I / F 104.
- An example of cooperation with an external communication apparatus having the same external communication I / F will be shown.
- the in-vehicle network system according to the present embodiment includes an information processing device 100a and an external communication device 200 connected to a bus 40 as shown in FIG.
- the in-vehicle network system according to the present embodiment is the same as the in-vehicle network system 10 (see FIG. 1) shown in the first embodiment, unless particularly described here.
- FIG. 6 is a functional block diagram showing configurations of the information processing apparatus 100a and the external communication apparatus 200.
- FIG. 7 shows an example of the hardware configuration of the information processing apparatus 100a and the external communication apparatus 200 according to the present embodiment. As illustrated in FIG. 7, the information processing apparatus 100 a has a configuration in which the external communication I / F 104 is removed from the information processing apparatus 100 illustrated in the first embodiment.
- the constituent elements of the information processing apparatus 100a are substantially the same as the constituent elements of the information processing apparatus 100 according to the first embodiment, and therefore will be described using the same reference numerals. Note that the information processing apparatus 100a is the same as the information processing apparatus 100 described in the first embodiment except for points that are not particularly described here.
- External communication device 200 has a communication circuit for communicating with an external device such as a server device located outside vehicle 30 in addition to the hardware configuration of the ECU.
- the external communication device 200 includes a processor 201, a memory 202, a CAN communication I / F (interface) 203, and an external communication I / F 204.
- the processor 201 operates in accordance with a program stored in the memory 202, the external communication apparatus 200 realizes various functions.
- the external communication device 200 includes a receiving unit 210 and an external transmission unit 241 in terms of functions.
- the receiving unit 210 is realized by a CAN communication I / F 203 or the like, has a predetermined message ID, receives a message including analysis information, and transmits the content of the message to the external transmission unit 241.
- the external transmission unit 241 is realized by an external communication I / F 204 or the like, and transmits analysis information to a server device outside the vehicle 30.
- the information processing apparatus 100a is configured to include a receiving unit 110, a buffer 120, a specifying unit 130, a processing unit 140, a recording medium 150, and a transmitting unit 160, as shown in FIG.
- the processing unit 140 is slightly different from the first embodiment, does not include the external communication unit 141, and does not transmit the analysis information related to the analysis target communication data outside the vehicle 30.
- the transmission unit 160 is realized by the CAN communication I / F 103, the processor 101 that executes a program, and the like. Under the control of the processing unit 140, the transmission unit 160 has a predetermined message ID and includes a message including analysis information and the like on the bus 40. Send to.
- the processing unit 140 in the information processing apparatus 100a uses the communication data received by the receiving unit 110 as analysis target communication data that is communication data received within the analysis target period specified by the specifying unit 130, and outside the analysis target period.
- the communication data is classified into non-analysis communication data which is received communication data, and predetermined processing for analysis of the analysis target communication data is executed based on the classification result.
- the processing unit 140 performs a process of recording the analysis information including the analysis target communication data on the recording medium 150 without including the non-analysis target communication data, as the predetermined process for the analysis. Further, the processing unit 140 performs processing for causing the server device outside the vehicle 30 to analyze the analysis target communication data in cooperation with the external communication device 200 as the predetermined processing for analysis. Specifically, as a predetermined process for analysis, the processing unit 140 uses the communication data stored in the buffer 120 to analyze information including analysis target communication data without including non-analysis communication data.
- the transmitter 160 is controlled so as to be included in a message having a predetermined message ID so as to be received by the device 200 and sequentially transmitted to the bus 40.
- the transmission unit 160 may include analysis information recorded in the recording medium 150 in the message.
- the reception unit 210 sequentially receives messages including the analysis information, and the external transmission unit 241 transmits the analysis information to a server device outside the vehicle 30.
- the processing unit 140 performs a primary analysis by performing information processing such as calculation for analysis based on only analysis target communication data among communication data stored in the buffer 120 as predetermined processing for analysis. Then, the communication data to be analyzed and the result of the primary analysis are recorded in the recording medium 150, and further included in a message having a message ID determined in advance to be received by the external communication device 200 in the transmission unit 160. You may make it transmit to the bus
- the analysis performed by the information processing apparatus 100a is also referred to as primary analysis.
- the information processing device 100a and the external communication device 200 in the present embodiment are combined to correspond to the information processing device 100 in the first embodiment. Functions as one information processing device.
- Processing sharing between the information processing apparatus 100a and the external communication apparatus 200 may be changed.
- the information processing apparatus 100a transmits the information indicating the analysis target period specified by the specifying unit 130 to the bus 40 in a message having a predetermined message ID so that the external communication apparatus 200 receives the information.
- the external communication device 200 grasps the analysis target period by receiving the message, and analyzes the communication data related to the message received from the bus 40 with the analysis target communication data within the analysis target period and outside the analysis target period. And the analysis information about the analysis target communication data can be transmitted to the server device.
- FIG. 8 is a flowchart illustrating an example of predetermined information processing in the information processing apparatus 100a.
- the information processing apparatus 100a starts the predetermined information processing shown in FIG. 8, for example, when it is detected that an automatic driving start operation is performed by an occupant of the vehicle 30 and the automatic driving is started by the ECU 20e of the vehicle 30 or the like.
- the operation is stopped when it is detected that the automatic operation has been stopped by the ECU 20e of the vehicle 30 and the like.
- the receiving unit 110 uses a reception ID list that lists message IDs of messages including communication data to be received.
- the information processing apparatus 100a receives the message including the communication data (Yes in step S31).
- the receiving unit 110 stores the communication data related to the received message, for example, the contents of the data field in the buffer 120 with, for example, a message ID and information indicating the reception time (step S32). If the message having the message ID shown in the reception ID list is not received in step S31 (No in step S31), the reception unit 110 skips the process in step S32.
- the information processing apparatus 100a detects the time of the predetermined operation by the specifying unit 130 (step S14), and based on the predetermined operation time, The start period is specified (step S15).
- the predetermined operation for example, an operation for a device that is operated when an abnormality is sensed by the occupant of the vehicle 30, such as the braking device 32, the steering device 33, and the alarm device 34, is determined in advance. If the predetermined operation is not performed in step S13 (No in step S13), the specifying unit 130 skips the processes in steps S14 to S15.
- step S16 the specifying unit 130 of the information processing device 100a specifies the end of the analysis target period (step S17). If the predetermined condition for the end of the analysis target period is not satisfied in step S16 (No in step S16), the specifying unit 130 skips the process in step S17.
- the processing unit 140 of the information processing apparatus 100a determines whether or not communication data that has not been analyzed yet and is received by the receiving unit 110 during the analysis target period is stored in the buffer 120.
- the determination is made (step S33) and the determination is affirmative (Yes in step S33)
- the communication data received within the analysis target period, that is, the analysis target communication data is primarily analyzed (step S34).
- the processing unit 140 may perform the primary analysis by any calculation. For example, the processing unit 140 performs determination based on a predetermined criterion for determining whether there is an abnormality, and information indicating whether the abnormality is an analysis result. Generate.
- the processing unit 140 records the analysis target communication data and the result of the primary analysis in the recording medium 150 (step S35), and includes the analysis target communication data and the result of the primary analysis by controlling the transmission unit 160.
- One or more messages are transmitted to the bus 40 according to the CAN protocol (step S36).
- the external communication device 200 receives the message by the reception unit 210, generates the analysis information based on the analysis target communication data by the external transmission unit 241 according to the result of the primary analysis, and analyzes the analysis
- the business information is transmitted to the server device outside the vehicle 30. If a negative determination is made in step S33 (No in step S33), the processing unit 140 skips the processes in steps S34 to S36.
- step S33 if the start of the analysis target period has not already been specified in step S15 at the time of determination, a negative determination (No in step S33) is made.
- Communication data received while the start of the analysis target period has already been specified in step S15 and the end of the analysis target period has not been specified in step S17 can be treated as communication data received within the analysis target period. .
- the processing unit 140 receives the communication data received up to that end within the analysis target period.
- the communication data received after the end of the period is handled as not the communication data received within the analysis target period.
- a flag indicating whether or not the primary analysis has been performed is attached to the buffer 120 for each communication data, and the processing unit 140 may check and update the flag. Further, the processing unit 140 may delete the communication data from the buffer 120 when performing a primary analysis corresponding to the communication data, for example.
- the communication data related to the messages sent and received by the ECUs 20a to 20f via the bus 40 in the vehicle 30 having the automatic driving function is classified in relation to the operation of the occupant of the vehicle 30. Only the analyzed communication data to be analyzed is set as a processing target for analysis.
- the information processing apparatus 100a sequentially acquires communication data included in a message having a specific message ID from the reception ID list from the bus 40. Only the communication data is analyzed, recorded on the recording medium 150, and the like.
- Predetermined operations are defined as operations for devices that are estimated to be operated when the driver of the vehicle 30 feels discomfort, anxiety, fear, etc., such as the braking device 32, the steering device 33, and the warning device 34. Therefore, the communication data within the analysis target period specified based on the predetermined operation can be related to the abnormal state of the vehicle 30 and compared as an analysis target for the purpose of advancement of automatic driving technology, security assurance, etc. Important information. Therefore, the information processing apparatus 100a can efficiently perform processing for analysis on communication data related to important information by predetermined information processing.
- Embodiments 1 and 2 have been described as examples of the technology according to the present invention.
- the technology according to the present invention is not limited to this, and can also be applied to embodiments in which changes, replacements, additions, omissions, etc. are made as appropriate.
- the following modifications are also included in one embodiment of the present invention.
- the vehicle 30 has the automatic driving function. It may be replaced with a robot that can be boarded.
- the above-described technique can be applied to a moving body having an automatic driving function that is a function of moving the moving body without receiving an operation of an occupant.
- the automatic driving function may be any function that automatically moves the moving body. Even if the driving route is autonomously selected to perform complete automatic driving, the driver can move the moving body. It may be sufficient to support the maneuvering.
- This boarding device is a device on which an occupant can board, for example, a moving body such as a moving robot and a vehicle 30, and a non-moving robot, a machine, and the like.
- the standard ID format (see FIG. 2) is shown as the format for the data frame in the CAN protocol.
- the extended ID format may be used, and the ID of the data frame (that is, the message ID). May be an extended ID in an extended ID format.
- the CAN protocol shown in the above embodiment may have a broad meaning including derivative protocols such as TTCAN (Time-Triggered CAN) and CANFD (CAN with Flexible Data Rate).
- the network used for communication between the ECUs in the moving body such as the vehicle 30 is not limited to the network according to the CAN protocol, and may be another network.
- Protocols other than CAN used in a network for exchanging communication data by the ECU include, for example, Ethernet (registered trademark), LIN (Local Interconnect Network), MOST (registered trademark) (Media Oriented Systems Transport), FlexRay ( Registered trademark), Broader reach protocol, and the like.
- Each ECU in the above embodiment is, for example, a device including a digital circuit such as a processor and a memory, an analog circuit, a communication circuit, and the like, but includes a hard disk device, a display, and other hardware components. You can leave.
- each device described in the above embodiment realizes its function by dedicated hardware (digital circuit or the like) instead of realizing the function by software by the program stored in the memory being executed by the processor. It's also good.
- the execution order of the various processing procedures shown in the above-described embodiment is not necessarily limited to the order described above, and the gist of the invention
- the execution order can be changed, a plurality of procedures can be performed in parallel, or a part of the procedures can be omitted without departing from the above.
- a part or all of the components constituting each device in the above embodiment may be configured by one system LSI (Large Scale Integration).
- the system LSI is an ultra-multifunctional LSI manufactured by integrating a plurality of components on a single chip.
- the system LSI is a computer system including a microprocessor, a ROM, a RAM, and the like. .
- a computer program is recorded in the RAM.
- the system LSI achieves its functions by the microprocessor operating according to the computer program.
- each part of the constituent elements constituting each of the above devices may be individually made into one chip, or may be made into one chip so as to include a part or all of them.
- the system LSI is used here, it may be called an IC (integrated circuit), LSI, super LSI, or ultra LSI depending on the degree of integration.
- the method of circuit integration is not limited to LSI's, and implementation using dedicated circuitry or general purpose processors is also possible.
- An FPGA Field Programmable Gate Array
- a reconfigurable processor that can reconfigure the connection and setting of circuit cells inside the LSI may be used.
- integrated circuit technology comes out to replace LSI's as a result of the advancement of semiconductor technology or a derivative other technology, it is naturally also possible to carry out function block integration using this technology. Biotechnology can be applied as a possibility.
- a part or all of the constituent elements constituting each of the above devices may be composed of an IC card that can be attached to and detached from each device or a single module.
- the IC card or module is a computer system that includes a microprocessor, ROM, RAM, and the like.
- the IC card or the module may include the super multifunctional LSI described above.
- the IC card or the module achieves its function by the microprocessor operating according to the computer program. This IC card or this module may have tamper resistance.
- an information processing method including all or part of the processing procedure shown in FIGS.
- the information processing method is used in an information processing apparatus mounted on a moving body that collects information for analysis of communication between a plurality of ECUs mounted on the moving body such as the vehicle 30 having an automatic driving function. It may be an information processing method.
- the information processing method may include a reception step (for example, steps S11 and S31), a specific step (for example, steps S13 to S17), and a processing step (for example, steps S19, S21, S34, and S36).
- the receiving step for example, steps S11 and S31
- a plurality of communication data sequentially transmitted through a network in which a plurality of ECUs in the moving body communicate is received.
- the specifying step for example, steps S13 to S17
- a predetermined operation time which is a time when a predetermined operation is performed on the moving body by an occupant of the moving body, is detected and an analysis target period including the predetermined operation time is specified.
- the processing steps for example, steps S19, S21, S34, S36
- the communication data received in the receiving step is received outside the analysis target period and the analysis target communication data that is the communication data received within the analysis target period.
- the communication data is classified into non-analysis communication data that is communication data, and predetermined processing for analysis of the analysis target communication data is executed based on the classification result.
- the information processing method may be a program (computer program) for realizing predetermined information processing by a computer, or may be a digital signal composed of a program.
- a computer program or a digital signal may be recorded on a computer-readable recording medium.
- Computer-readable recording media include, for example, a flexible disk, hard disk, CD-ROM, MO (magneto-optical disc), DVD (digital versatile disc), DVD-ROM (digital versatile disc read-only memory), DVD- It may be a RAM (digital versatile disc, random access memory), a BD (Blu-ray (registered trademark) Disc), a semiconductor memory, or the like. Further, it may be a digital signal recorded on these recording media.
- a program or a digital signal may be transmitted via an electric communication line, a wireless or wired communication line, a network represented by the Internet, data broadcasting, or the like.
- a computer system having a microprocessor and a memory may be used, in which the memory records the above program, and the microprocessor operates according to the program.
- the program or digital signal may be recorded on a recording medium and transferred, or the program or digital signal may be transferred via a network or the like and executed by another independent computer system.
- the present invention can be used in a network system or the like of a vehicle having an automatic driving function or other boarding devices.
- In-vehicle network system 20a-20f Electronic control unit (ECU) 30 Vehicle 31 Engine 32 Braking Device 33 Steering Device 34 Alarm Device 40 Bus 100, 100a Information Processing Device 101, 201 Processor (Microprocessor) 102, 202 Memory 103, 203 CAN communication I / F 104,204 External communication I / F DESCRIPTION OF SYMBOLS 110,210 Reception part 120 Buffer 130 Identification part 140 Processing part 141 External communication part 150 Recording medium 160 Transmission part 200 External communication apparatus 241 External transmission part
Landscapes
- Engineering & Computer Science (AREA)
- Computer Networks & Wireless Communication (AREA)
- Signal Processing (AREA)
- Small-Scale Networks (AREA)
- Traffic Control Systems (AREA)
Abstract
情報処理装置は、受信部と、特定部と、処理部と、を有する。受信部は、搭乗用装置における前記複数の電子制御ユニットが通信するネットワークで逐次送信された複数の通信データを受信する。特定部は、搭乗用装置の乗員により搭乗用装置に対する所定操作がなされた時である所定操作時を検知して、所定操作時を含む分析対象期間を特定する。処理部は、受信部により受信された通信データを、分析対象期間内に受信された通信データである分析対象通信データと、分析対象期間外に受信された通信データである分析対象外通信データとに分別し、分別の結果に基づいて分析対象通信データについての分析のための所定処理を実行する。
Description
本発明は、自動運転を行う移動体に搭載された電子制御ユニットの間の通信の分析のための技術に関する。
近年、自動車には多数の電子制御ユニット(ECU:Electronic Control Unit)が配置され、自動車の制御のために複数のECUは、車載ネットワークと称される通信ネットワークを構成する。ECUは、例えばISO11898で規定されているCAN(Controller Area Network)規格に従って、伝送路であるバスを介して通信を行う。
送信ノードとなるECUは、ID(identifier(メッセージIDとも称する))を付けたメッセージとしてのフレームを送信し、受信ノードとなる各ECUはECU毎に予め定められたIDのフレームを受信する。
また、自動車の自動運転に係る技術として、例えば、先進運転者支援システム(ADAS:Advanced Driver Assistance System)が知られている。ADASの機能(例えば駐車支援機能、車線維持支援機能、衝突回避支援機能等)においては、例えば、車載ネットワークに接続されたセンサで取得された情報、つまり、車載カメラで撮影した画像、ライダー(LIDAR:Light Detection and Ranging)で取得した情報が利用され、その情報に基づいてECUにおいて自動車の周辺環境を認知して、認知結果に応じて自動車の制御がなされる。例えば、衝突回避支援機能の1つの自動操舵機能として、複数のECUが連携し、進路上に検知した障害物との衝突を回避すべく操舵装置を制御する。
また、従来、車載ネットワークのセキュリティに係る技術として、車載ネットワークのバスに接続されたモジュールが、監視するメッセージに係るデータを蓄積してハブに送信する技術が知られている(特許文献1参照)。
本発明は、自動運転を行う、移動体その他の搭乗用装置における通信に係る分析のための処理を効率的に行えるようにする情報処理装置を提供する。また、本発明は、その情報処理装置で用いられる情報処理方法及びプログラムを提供する。
本発明の一態様に係る情報処理装置は、自動運転機能を有する搭乗用装置に搭載された複数の電子制御ユニット間の通信についての分析用の情報を収集する。情報処理装置は、受信部と、特定部と、処理部と、を有する。受信部は、搭乗用装置における複数の電子制御ユニットが通信するネットワークで逐次送信された複数の通信データを受信する。特定部は、搭乗用装置の乗員により搭乗用装置に対する所定操作がなされた時である所定操作時を検知して、当該所定操作時を含む分析対象期間を特定する。処理部は、受信部により受信された通信データを、分析対象期間内に受信された通信データである分析対象通信データと、分析対象期間外に受信された通信データである分析対象外通信データとに分別し、分別の結果に基づいて分析対象通信データについての分析のための所定処理を実行する。
また、本発明の別の一態様に係る情報処理方法は、自動運転機能を有する搭乗用装置に搭載された複数の電子制御ユニット間の通信についての分析用の情報を収集する、当該搭乗用装置に搭載された情報処理装置において用いられる。情報処理方法は、受信ステップと、特定ステップと、処理ステップと、を含む。受信ステップでは、搭乗用装置における複数の電子制御ユニットが通信するネットワークで逐次送信された複数の通信データを受信する。特定ステップでは、搭乗用装置の乗員により搭乗用装置に対する所定操作がなされた時である所定操作時を検知して、当該所定操作時を含む分析対象期間を特定する。処理ステップでは、受信ステップで受信された通信データを、分析対象期間内に受信された通信データである分析対象通信データと、分析対象期間外に受信された通信データである分析対象外通信データとに分別し、分別の結果に基づいて分析対象通信データについての分析のための所定処理を実行する。
また、本発明のさらに別の一態様に係るプログラムは、自動運転機能を有する搭乗用装置に搭載された複数の電子制御ユニット間の通信についての分析用の情報を収集する、当該搭乗用装置に搭載されてマイクロプロセッサを有する情報処理装置に実行させるためのプログラムである。プログラムは、受信ステップと、特定ステップと、処理ステップと、を情報処理装置に実行させる。受信ステップでは、搭乗用装置における複数の電子制御ユニットが通信するネットワークで逐次送信された複数の通信データを受信する。特定ステップでは、搭乗用装置の乗員により搭乗用装置に対する所定操作がなされた時である所定操作時を検知して、当該所定操作時を含む分析対象期間を特定する。処理ステップでは、受信処理で受信された通信データを、分析対象期間内に受信された通信データである分析対象通信データと、分析対象期間外に受信された通信データである分析対象外通信データとに分別し、分別の結果に基づいて分析対象通信データについての分析のための所定処理を実行する。
なお、本発明の態様を方法、装置、システム、記録媒体(コンピュータ読み取り可能な一過性でない記録媒体を含む)、コンピュータプログラムなどの間で変換したものもまた、本発明の態様として有効である。
本発明によれば、自動運転を行う搭乗用装置における通信に係る分析のための処理を効率的に行えるようになる。
本発明の実施の形態の説明に先立ち、従来の技術における問題点を簡単に説明する。自動運転技術の進展、セキュリティ確保等のために、ECUを有して自動運転を行う自動車等の移動体について、ECU間の通信に係る情報を収集して、適切に自動運転がなされたか否かの検証等といった各種分析を行うことは、有用である。しかし、CANのバスを介してECUが授受するメッセージは多量であり、バスを流れる全てのメッセージを対象として分析のための処理を行うには、多くの計算資源、記憶容量、通信帯域等のリソースが必要となる。
(本発明の基礎となった知見等)
自動運転機能を有する車両(例えば自動車)において、複数の電子制御ユニット(ECU)がCANプロトコルに従ってバスを介してメッセージの授受を行う車載ネットワークシステムでは、バスに多量のメッセージが流れる。このメッセージに表された車両の状態、車両の走行に係る制御内容等の情報を収集して分析することで、例えば、適切に自動運転がなされたか否かの検証、改善すべき事項の把握等が可能となる。
自動運転機能を有する車両(例えば自動車)において、複数の電子制御ユニット(ECU)がCANプロトコルに従ってバスを介してメッセージの授受を行う車載ネットワークシステムでは、バスに多量のメッセージが流れる。このメッセージに表された車両の状態、車両の走行に係る制御内容等の情報を収集して分析することで、例えば、適切に自動運転がなされたか否かの検証、改善すべき事項の把握等が可能となる。
また、メッセージに係る情報を収集して分析することで、攻撃者による不正なメッセージの送信等の攻撃の検知、攻撃か否かの判断手法の確立等が可能となる。攻撃者は、例えば、車載ネットワークへのサイバー攻撃等によりADASを不正に支配することで、運転者の意に反して車両をコントロールしようとする者である。
また、自動運転技術の進展、セキュリティ確保等のためには、更に、同種の複数の車両の各車載ネットワークで授受されたメッセージに係る情報を、収集して分析することも有用である。
一例として、自動運転機能を有する車両への新たな攻撃に対するセキュリティ対策の迅速な実現のために、車両製造者(車両メーカ)等により運用されるサーバ装置がメッセージの分析機能等を有する例を用いて説明する。
車両メーカで製造された各車両は、車載ネットワークで流れるメッセージの情報を速やかにサーバ装置に逐次送信する。サーバ装置では、受信した情報に基づいて各種分析を行う。分析内容としては、例えば、車載ネットワークを流れるメッセージの種類、周期、頻度等、或いは、メッセージの内容が示す車両の状態、制御内容等といった各種事項の把握等が挙げられる。この分析の結果に基づいて、車両メーカ等では、新たな攻撃への対策を講じ得る。
しかし、車両が、車載ネットワークのバスに流れる全てのメッセージに係る情報を、分析のために迅速にサーバ装置等に送信するには、例えば1台あたり500kbps程度だが、交通量が多い場合等といった多数の車両とサーバ装置等とが通信する状況では、かなり大きな通信帯域が必要となる。このように大きな通信帯域等のリソースの確保は、容易とは限らない。
そこで、本発明者らは、車載ネットワークのバスを流れたメッセージに係る情報の分析のために必要となる通信帯域等のリソースの量を抑えるべく、送信等といった分析のための処理の対象を絞り込み、その処理を効率的に行う技術に想到した。
この技術に係る情報処理方法では、具体的には、車両の乗員が、ブレーキの操作等といった所定操作を行った時を含む例えば数秒、数十秒等の期間を分析対象期間として定め、分析対象期間内に受信されたメッセージに対象を限定して、メッセージの分析のための処理を行う。
自動運転機能を有する車両における異常発生の前後にバスを流れたメッセージに係る情報は、例えば自動運転機能の検証或いはセキュリティ対策等の観点において重要性が高い。このため、この情報処理方法では、自動運転中でも車両の挙動等により乗員が違和感を感じ、異常発生を感知した場合には車両の乗員がブレーキの操作等の所定操作を行うと想定し、その所定操作の時を異常発生に関わる時として分析対象期間の特定に利用する。所定操作としては、例えば、ブレーキつまり制動装置の操作、ステアリングつまり操舵装置の操作、警報装置の操作等がある。
これにより、メッセージについての分析のための処理に必要なリソースの増大化を抑制し得る。この増大化が抑制され得るリソースは、例えば、車両からサーバ装置への情報の送信に用いる通信帯域、車両又はサーバ装置で情報を保持するための記憶媒体(或いは記録媒体)の容量、車両又はサーバ装置等における分析に係る各種演算処理に用いられる計算資源等である。例えば、車両にこの情報処理方法を実現する情報処理装置を搭載することで、車両における通信に係る分析のための処理を効率的に実行することが可能となる。
なお、分析の目的は、上述の例のような新たな攻撃に対するセキュリティ対策の迅速な実現以外であっても良く、自動運転技術の進展、セキュリティ確保等のための各種目的を想定可能である。従って、車載ネットワークのバスを流れたメッセージに係る情報の分析のために、車両がその情報を外部のサーバ装置等に必ず逐次送信しなければならない訳ではない。
例えば、車両はバスを流れたメッセージに係る情報の送信を行わず、その情報を車両に搭載した記録媒体に蓄積しておいても良い。この場合には、例えば、何らかのタイミングで車両に外部ツール等を接続して記録媒体から情報を読み出すこと、記録媒体を車両から取り外すこと等により、記録媒体に蓄積された情報を、車両外のコンピュータ等の装置において分析に利用することができる。また、車両内の装置において、バスを流れたメッセージに係る情報を集めて分析を行うこととしても良い。
いずれの場合であっても、上述の情報処理方法により、車両の乗員による所定操作に基づいて定めた分析対象期間内にバスから受信されたメッセージに対象を限定して、送信、記録媒体への記録等といった分析のための処理を行うことは、効率的であり、分析のための処理に必要なリソース量を小さく抑制できる効果を生ずる。
また、車両に注目して、情報処理方法について説明したが、この情報処理方法は、車両以外のロボット等にも適用でき、人を乗せて自動運転を行い得る移動体その他の搭乗用装置に適用可能である。この情報処理方法は、例えば、搭乗用装置に搭載された情報処理装置において実行され得る。
本発明の一態様に係る情報処理装置は、自動運転機能を有する搭乗用装置に搭載された複数の電子制御ユニット間の通信についての分析用の情報を収集する。情報処理装置は、受信部と、特定部と、処理部と、を有する。受信部は、搭乗用装置における複数の電子制御ユニットが通信するネットワークで逐次送信された複数の通信データを受信する。特定部は、搭乗用装置の乗員により搭乗用装置に対する所定操作がなされた時である所定操作時を検知して、当該所定操作時を含む分析対象期間を特定する。処理部は、受信部により受信された通信データを、分析対象期間内に受信された通信データである分析対象通信データと、分析対象期間外に受信された通信データである分析対象外通信データとに分別し、分別の結果に基づいて分析対象通信データについての分析のための所定処理を実行する。これにより、搭乗用装置内のECU間での通信に係る情報の分析のための処理に必要となるリソースの量の増大化の抑制が可能となる。なお、例えば通信データとして分析に有用な種類のデータ等を定め得る。また、所定処理は、分析対象通信データと分析対象外通信データとを区別することで行われる処理である。所定処理は、例えば、受信部により受信されて記録媒体に保持された通信データのうち分析対象外通信データのみを削除する処理であっても良いし、分析対象通信データを分析して分析対象外通信データを分析しない処理であっても良い。
また、例えば、特定部は、受信部により受信された通信データに基づいて所定操作時を検知し、所定操作時から、当該所定操作時の後に所定条件が成立した時までの期間を含むように、分析対象期間を特定することとしても良い。これにより、例えば、移動体その他の搭乗用装置の乗員が、移動等といった搭乗用装置の自動運転の作用に対して不快感、不安等を感じた場合に行う操作を所定操作と定めておくことにより、所定操作時から所定条件の成立時までを含む期間内のECU間での通信の情報を分析のための処理の対象とすることができる。このため、異常状態における通信の情報を効率的に、分析のための処理の対象とすることができ、その処理に要するリソース量を抑制することが可能となる。
また、例えば、特定部は、所定操作時を分析対象期間の始期とするように、分析対象期間を特定することとしても良い。これにより、搭乗用装置の乗員が所定操作を行った時以降にECU間でなされた通信の情報を、分析のための処理の対象とすることができ、所定操作より前における通信の情報までその処理の対象とする場合よりも、処理に要するリソース量を小さく抑えることができる。
また、例えば、特定部は、所定操作時より所定時間前を分析対象期間の始期とするように、分析対象期間を特定することとしても良い。これにより、搭乗用装置の乗員が所定操作を行った時の直前の数秒、数十秒等の所定時間の間にECU間でなされた通信の情報を、分析のための処理の対象とすることができる。
また、例えば、受信部により受信された通信データを格納可能なバッファをさらに有してもよい。また、特定部は、所定操作時においてバッファに格納されている通信データのうち、最も早くバッファに格納された通信データが受信部に受信された時を分析対象期間の始期とするように、分析対象期間を特定することとしても良い。また、例えば、受信部は、格納対象の通信データのバッファへの格納に際して、バッファに空き領域が無い場合には最も早く格納されていた通信データから順に上書き対象として、当該格納対象の通信データで上書きすることとしても良い。これにより、受信された通信データを一時的にバッファに格納する場合に搭乗用装置の乗員が所定操作を行った時にバッファに残っていた通信データを分析のための処理の対象とすることができる。これらによれば、例えば、搭乗用装置の乗員の異常状態の発生への反応が多少遅れた場合、つまり所定操作が異常状態の発生から遅れた場合等においても、異常状態に関連してECU間でなされた通信の情報の効率的な分析が可能となる。
また、例えば、特定部は、所定操作時の後に所定条件が成立した時を分析対象期間の終期とするように、分析対象期間を特定することとしても良い。所定条件は、例えば、所定操作時から一定時間が経過した場合に成立するものでも良いし、所定操作時から一定データ量の通信データを受信した場合に成立するものでも良い。これにより、分析における通信データの重要性に鑑みて所定操作と組み合わせて所定条件を適切に定めておけば、効率的に分析のための処理を行うことが可能となる。
また、例えば、搭乗用装置は移動体でもよい。また、搭乗用装置は、所定操作に応じて搭乗用装置の移動を抑制する制動装置を有してもよい。また、所定条件は、搭乗用装置が停止した場合に成立することとしても良い。これにより、自動運転機能を有する移動体の移動に不快感、不安等を感じた乗員が制動装置を操作して移動を抑制しようとした時から移動体が停止した時までを含む期間内のECU間での通信の情報をその期間外の通信の情報と分別でき、分析のための処理の対象を、異常状態に関連する情報に効率的に絞り込むことが可能となる。
また、例えば、搭乗用装置は移動体でもよい。また、搭乗用装置は、所定操作がなされてから特定操作がなされるまで搭乗用装置の移動を抑制する制動装置を有してもよい。また、特定部は、更に所定操作に後続して特定操作がなされた時である特定操作時を検知してもよい。また、所定条件は、特定操作時に成立することとしても良い。これにより、自動運転機能を有する移動体の移動に不快感、不安等を感じた乗員が制動装置を操作して移動を抑制しようとした時からその操作を止めた時までを含む期間内のECU間での通信の情報をその期間外の通信の情報と分別でき、分析のための処理の対象を、異常状態に関連する情報に効率的に絞り込むことが可能となる。
また、例えば、搭乗用装置は移動体でもよい。また、搭乗用装置は、操作に応じて搭乗用装置の移動方向を変更する操舵装置を有してもよい。また、所定操作は、操舵装置に対する操作であることとしても良い。これにより、移動体の移動に不快感、不安等を感じた乗員が操舵装置を操作して移動方向を変更しようとした時に関連した期間内のECU間での通信の情報に、分析のための処理の対象を絞り込むことができる。
また、例えば、搭乗用装置は、操作に応じて搭乗用装置の外部に警報を発する警報装置を有してもよい。また、所定操作は、警報装置に対する操作であることとしても良い。これにより、搭乗用装置の自動運転に異常等を感じた乗員が搭乗用装置の外に警報を発する警報装置を操作した時に関連した期間内のECU間での通信の情報に、分析のための処理の対象を絞り込むことができる。これらにより、異常状態に関連する情報の効率的な分析等が可能となる。
また、例えば、処理部は、搭乗用装置の外部の装置に分析対象通信データについての分析を行わせるために、所定処理として、分析対象外通信データを含まず分析対象通信データを含む分析用情報を搭乗用装置の外部に送信する処理を行うこととしても良い。これにより、例えば分析機能等を有する外部の装置に対して送信する、通信データ等の分析用情報を、分析対象通信データに係る情報に絞り込めるので、送信に必要な通信帯域を、その絞り込みをしない場合に比べて小さく抑えることが可能となる。このため、搭乗用装置のネットワークでの通信に係る情報を、効率的に、外部の装置で分析することが可能となる。
また、例えば、処理部は、所定処理として、分析対象通信データについての分析に用いられる分析用情報を記録するための所定記録媒体に、分析対象外通信データを含まず分析対象通信データを含む分析用情報を記録する処理を行うこととしても良い。これにより、所定記録媒体に記録すべき通信データ等の分析用情報を、分析対象通信データに係る情報に絞り込めるので、記録媒体に単位時間において記録されるデータ量をその絞り込みをしない場合に比べて小さく抑えることが可能となる。このため、分析のための記録に必要な記録媒体の容量の増大化が抑制される。
また、例えば、搭乗用装置は、車両でもよい。また、複数の電子制御ユニットは、CAN(Controller Area Network)プロトコルに従ってバスを介して通信データを含むフレームの授受を行い、情報処理装置は、バスに接続され、受信部は、バスから通信データを含むフレームを逐次受信することとしても良い。これにより、車両内のECU間でのバスを介した通信に係る情報の分析のための処理に必要となるリソースの量の抑制が可能となる。
また、例えば、受信部は、IDフィールドの内容が特定条件を満たすデータフレームのデータフィールドの内容を通信データとして受信することとしても良い。例えば、車載ネットワークシステムで定められたデータの種類のうち、分析に有用な特定種類のデータに対応する特定のメッセージIDを、特定条件を満たすように定めておくことができる。これにより、内容が限定された通信データを、特定した分析対象期間を用いて時間的に分別して、処理対象を絞り込めるので、効率的に、分析のための処理を行うことができる。
また、本発明の別の一態様に係る情報処理方法は、自動運転機能を有する搭乗用装置に搭載された複数の電子制御ユニット間の通信についての分析用の情報を収集する、当該搭乗用装置に搭載された情報処理装置において用いられる。情報処理方法は、受信ステップと、特定ステップと、処理ステップと、を含む。受信ステップでは、搭乗用装置における複数の電子制御ユニットが通信するネットワークで逐次送信された複数の通信データを受信する。特定ステップでは、搭乗用装置の乗員により搭乗用装置に対する所定操作がなされた時である所定操作時を検知して、当該所定操作時を含む分析対象期間を特定する。処理ステップでは、受信ステップで受信された通信データを、分析対象期間内に受信された通信データである分析対象通信データと、分析対象期間外に受信された通信データである分析対象外通信データとに分別し、分別の結果に基づいて分析対象通信データについての分析のための所定処理を実行する。これにより、搭乗用装置内のECU間での通信に係る情報の分析のための処理に必要となるリソースの量の増大化の抑制が可能となる。
また、本発明のさらに別の一態様に係るプログラムは、自動運転機能を有する搭乗用装置に搭載された複数の電子制御ユニット間の通信についての分析用の情報を収集する、当該搭乗用装置に搭載されてマイクロプロセッサを有する情報処理装置に実行させるためのプログラムである。プログラムは、受信ステップと、特定ステップと、処理ステップと、を情報処理装置に実行させる。受信ステップでは、搭乗用装置における複数の電子制御ユニットが通信するネットワークで逐次送信された複数の通信データを受信する。特定ステップでは、搭乗用装置の乗員により搭乗用装置に対する所定操作がなされた時である所定操作時を検知して、当該所定操作時を含む分析対象期間を特定する。処理ステップでは、受信処理で受信された通信データを、分析対象期間内に受信された通信データである分析対象通信データと、分析対象期間外に受信された通信データである分析対象外通信データとに分別し、分別の結果に基づいて分析対象通信データについての分析のための所定処理を実行する。このプログラムを、情報処理装置にインストールすることにより、その情報処理装置のマイクロプロセッサがプログラムを実行することで、所定情報処理が実行される。これにより、搭乗用装置内のECU間での通信に係る情報の分析のための処理に必要となるリソースの量の増大化の抑制が可能となる。
なお、これらの全般的又は具体的な態様は、システム、方法、集積回路、コンピュータプログラム又はコンピュータで読み取り可能なCD-ROM(compact disc read-only memory)等の記録媒体で実現されても良く、システム、方法、集積回路、コンピュータプログラム又は記録媒体の任意な組み合わせで実現されても良い。
以下、実施の形態に係る情報処理方法を用いる情報処理装置を含む車載ネットワークシステムについて、図面を参照しながら説明する。ここで示す実施の形態は、いずれも本発明の一具体例を示すものである。従って、以下の実施の形態で示される数値、構成要素、構成要素の配置及び接続形態、並びに、ステップ(工程)及びステップの順序等は、一例であって本発明を限定するものではない。以下の実施の形態における構成要素のうち、独立請求項に記載されていない構成要素については、任意に付加可能な構成要素である。また、各図は、模式図であり、必ずしも厳密に図示されたものではない。
(実施の形態1)
[1.1 車載ネットワークシステム10の全体構成]
図1は、実施の形態1に係る車載ネットワークシステム10の全体構成を示す図である。
[1.1 車載ネットワークシステム10の全体構成]
図1は、実施の形態1に係る車載ネットワークシステム10の全体構成を示す図である。
車載ネットワークシステム10は、CANプロトコルに従って通信するネットワーク通信システムの一例であり、車両30における車載ネットワークを含む。車両30は、例えば自動車であり、アクチュエータ、制御装置、センサ等の各種機器が搭載されている。
車載ネットワークシステム10は、バス40と、情報処理装置100と、ECU20a~20fと、エンジン31と、制動装置32と、操舵装置33と、警報装置34とを含んで構成される。図1では省略しているものの、車載ネットワークシステム10にはECU20a~20f以外にもいくつものECUが含まれ得るが、ここでは説明の便宜上、ECU20a~20fに注目して説明を行う。
各ECUは、ハードウェア面において、例えば、プロセッサ(つまりマイクロプロセッサ)、メモリ等のデジタル回路、アナログ回路、通信回路等を含む装置である。メモリは、ROM(read-only memory)、RAM(random access memory)等であり、プロセッサにより実行されるプログラム(つまりコンピュータプログラム)を記憶することができる。各ECUは、例えばプロセッサがプログラムに従って動作することにより、車両30の制御等のための各種機能を実現する。プログラムは、所定の機能を達成するために、プロセッサに対する指令を示す命令コードが複数個組み合わされて構成されたものである。
各ECUは、バス40に接続されて車載ネットワークを構成する。また、各ECUは、アクチュエータ、制御装置、センサ等の機器と接続され得る。図1の例では、ECU20a~20dはそれぞれ、エンジン31、制動装置32、操舵装置33、警報装置34と接続されている。
エンジン31は、例えばアクセルペダルの操作等に応じてスロットルバルブの開閉等でエンジンの回転数を制御する。制動装置32は、例えばブレーキペダルの操作等に応じてブレーキアクチュエータを制御して車両30の速度を抑制する。操舵装置33は、例えばステアリングホイールの操作等に応じて、操舵角アクチュエータ等を制御し、車両30の進行方向、つまり移動方向を、変更する。警報装置34は、例えば、車両30の外部へ報知を行うために非常点滅表示灯を点灯する制御を行う装置であり、警笛を鳴らす制御を行う装置であっても良い。
各ECUは、CANプロトコルに従ってバス40を介してメッセージの授受を行う。例えば、センサに接続されたECUから、センサで取得された情報に基づくデータを含むメッセージが周期的にバス40に送信される。メッセージの送信周期は例えば数百ミリ秒等である。また、車両30内のアクチュエータに接続されたECUでは、バス40から受信したメッセージに基づいてアクチュエータの制御内容を決定して制御する。
ECU20e及びECU20fは、ADASの機能としての自動運転機能を担うECUであり、例えば、ECU20eが自動運転制御機能を実現し、ECU20fが自動操舵機能を実現する。ECU20eは、例えば、車両30の乗員により自動運転開始の操作、自動運転終了の操作等がなされたことを検知して、自動運転の開始及び終了の判定を行い、自動運転中は、車両30の状態に応じて自動運転のための制御内容を決定して制御を指示する各種メッセージをバス40に送信する。
ECU20fは、例えば、ECU20eからの制御の指示に係るメッセージ、その他のECUからのセンサで取得された情報に基づくデータを含むメッセージ等を受信する。そしてECU20fは、受信したメッセージ等から、車両30の状態を判定して車両30の状態に応じて自動操舵のための操舵角等の指示情報を決定し、指示情報を示すメッセージをバス40に送信する。この指示情報を示すメッセージは、ECU20cが受信してその指示情報に従って操舵装置33を制御するように、予め定められたメッセージIDを有する。ECU20eからのメッセージを受けて動作するECUは、ECU20f以外にいくつか存在しても良い。
情報処理装置100は、ECU20a~20fが送受信する通信データに係る情報を収集して分析のための処理を行う装置である。情報処理装置100は、例えばECU20a~20f等と同様のハードウェアを含んで構成され、CANプロトコルに従ってバス40からメッセージを受信する。情報処理装置100は、バス40から受信したメッセージに含まれる通信データを、分析処理の対象となる通信データとそれ以外の通信データとに分別することで、処理対象を絞り込む機能を有する。
また、情報処理装置100は、車両30外の装置と、インターネット等といった広域ネットワークを介して通信する外部通信機能を有する。情報処理装置100は、分析機能を有する車両30外のサーバ装置に対して、バス40から受信した通信データから処理対象として絞り込まれた通信データに基づく情報を送信する。サーバ装置は、例えば、同種の複数の車両30の各車載ネットワークで授受されたメッセージに係る情報を、各車両30から受信して収集し、分析するコンピュータ等である。
車載ネットワークシステム10では、CANプロトコルに従って各ECUがメッセージとしてのデータフレーム等といったフレームの授受を行う。CANプロトコルにおけるフレームには、データフレーム、リモートフレーム、オーバーロードフレーム及びエラーフレームがある。ここでは、通信データを含むメッセージとしてのデータフレームに着目して説明を行う。
[1.2 データフレームフォーマット]
以下、CANプロトコルに従ったネットワークで用いられるフレームの1つであるデータフレームについて説明する。
以下、CANプロトコルに従ったネットワークで用いられるフレームの1つであるデータフレームについて説明する。
図2は、CANプロトコルで規定されるデータフレームのフォーマットを示す図である。同図には、CANプロトコルで規定される標準IDフォーマットにおけるデータフレームを示している。データフレームは、SOF(Start Of Frame)、IDフィールド、RTR(Remote Transmission Request)、IDE(Identifier Extension)、予約ビット「r」、DLC(Data Length Code)、データフィールド、CRC(Cyclic Redundancy Check)シーケンス、CRCデリミタ「DEL」、ACK(Acknowledgement)スロット、ACKデリミタ「DEL」、及び、EOF(End Of Frame)の各フィールドで構成される。
IDフィールドは、11bitで構成される、データの種類を示す値であるID(メッセージIDとも称する)を格納するフィールドである。複数のノードが同時に送信を開始した場合、このIDフィールドで通信調停を行うために、IDが小さい値を持つフレームが高い優先度となるよう設計されている。
データフィールドは、最大64bitで構成され、データを格納するフィールドである。
メッセージを送信する各ECUは、車載ネットワークシステム10の仕様として予め定められた種類のデータをデータフィールドに格納し、その種類のデータに対応して予め定められたメッセージIDをIDフィールドに格納することでデータフレームを構築して送信することになる。車両メーカ等により、車載ネットワークシステム10の仕様として、メッセージに用いられるメッセージIDと、対応するデータの構成等とが、予め定められている。
[1.3 情報処理装置100の構成]
図3は、情報処理装置100の構成を示す機能ブロック図である。情報処理装置100は、図3に示すように、受信部110と、バッファ120と、特定部130と、処理部140と、記録媒体150とを含んで構成される。処理部140は、外部通信部141を含む。
図3は、情報処理装置100の構成を示す機能ブロック図である。情報処理装置100は、図3に示すように、受信部110と、バッファ120と、特定部130と、処理部140と、記録媒体150とを含んで構成される。処理部140は、外部通信部141を含む。
情報処理装置100は、ハードウェア面において、ECUのハードウェア構成に加えて、例えば、記録媒体150及び車両30の外に所在する外部装置と通信するための通信回路を有する。図4に、情報処理装置100のハードウェア構成の一例を示す。図4の例では、情報処理装置100は、ハードウェア面において、プロセッサ(マイクロプロセッサ)101、メモリ102、CAN通信I/F(インタフェース)103、外部通信I/F104、及び、記録媒体150を有する。
メモリ102は、ROM、RAM等であり、プロセッサ101により実行されるプログラムを記憶することができる。メモリ102は、不揮発性メモリを含んでも良い。例えばプロセッサ101が、メモリ102に記憶された、所定情報処理等のためのプログラムに従って動作することにより、情報処理装置100は各種機能を実現することになる。CAN通信I/F103は、CANプロトコルに従って通信を行うためのCANコントローラ等の通信回路である。外部通信I/F104は、車両30外のネットワークと通信するための無線通信回路等である。記録媒体150は、例えば、メモリカード等の不揮発性メモリ、ハードディスク等である。
受信部110は、CAN通信I/F103、プログラムを実行するプロセッサ101等により実現される。受信部110は、ECU間での通信に係る通信データを、バス40から逐次受信し、バッファ120に格納する。受信部110が、受信する通信データは、バス40を流れるメッセージつまりデータフレームに含まれる。ここで、通信データは、例えば、データフレームのデータフィールドの内容であり、更にメッセージID等のデータフレーム内の他の情報を含むこととしても良い。
また、受信部110は、バス40上に現れた全てのメッセージを受信することとしても良いし、特定のメッセージIDを有するメッセージのみ、つまり、IDフィールドの内容が特定条件を満たすメッセージのみを受信することとしても良い。IDフィールドの内容が特定条件を満たすメッセージは、例えば、受信IDリストに含まれるメッセージIDを有するメッセージである。例えば、受信部110は、受信IDリストを用いて、特定のメッセージIDに対応する種類の通信データをデータフィールド内に含む、複数のメッセージを受信対象とする。
受信IDリストには、分析対象として有用な種類の通信データをデータフィールドの内容として含むメッセージのメッセージIDを列挙している。分析対象として有用な種類の通信データは、例えば、車速、変速ギアの位置、推定ギア、車軸の角速度、アクセルペダルの位置、エンジンの回転速度、ドライバ要求トルク、エンジンの最大トルク、燃料消費率、スロットルバルブの位置、制動レベル、操舵角、横加速度、ヨーレート等である。
バッファ120は、記憶媒体で構成され、例えばメモリ102の一領域等で構成される。バッファ120には、受信部110により受信された通信データが、少なくとも一時的に、格納される。例えば、受信部110は、バス40から通信データを含むメッセージを受信する度に、受信した通信データをバッファ120への格納対象とし、バッファ120に空き領域があればその格納対象の通信データをバッファ120に格納する。バッファ120に空き領域が無い場合には、受信部110は、例えば、最も早くバッファ120に格納されていた通信データから順に上書き対象として、その格納対象の通信データで上書きする。
特定部130は、プログラムを実行するプロセッサ101等により実現される。特定部130は、車両30の乗員により車両30に対する所定操作がなされた時である所定操作時を検知して、その所定操作時を含む分析対象期間を特定する。所定操作は、例えば、ブレーキペダルを踏み込む等といった制動装置32の操作であり、予め定められた操作である。所定操作は、ステアリングホイールを回す等といった操舵装置33の操作であっても良いし、警報装置34の操作、例えば非常点滅表示灯を点灯させるための操作用インタフェース或いは警笛を鳴らすための操作用インタフェースの操作であっても良い。
所定操作がなされると、車両30は所定操作に応じた動作を行う。例えば、制動装置32の操作がなされると車両30の移動が抑制され、つまり車両30が減速し、操舵装置33の操作がなされると車両30は進行方向を変え、警報装置34の操作がなされると車両30は光、音等によって車両30の外へ警報を発する。所定操作時の特定部130による検知は、いかなる方法で行われても良いが、例えば、バス40から受信された通信データを参照することで行われる。例えば、所定操作がなされたことを示す通信データを含むメッセージが、所定操作に対応して車両30の制御を行うECUにより送信される。
そして、特定部130は、バッファ120の内容の確認を繰り返し、所定操作がなされたことを示す通信データがバッファ120に格納されていることを確認するとその確認時、或いは、その通信データが受信部110により受信された時を、所定操作時として扱う。
特定部130は、例えば、所定操作時から、その所定操作時の後に所定条件が成立した時までの期間を含むように、分析対象期間を特定する。所定条件は、例えば、所定操作時から一定時間(例えば、数秒等)が経過した時に成立する。また、所定条件は、例えば、所定操作時から後に、一定データ量の通信データがバス40から受信された時に成立することとしても良い。また、所定条件は、車両30が停止した場合に成立することとしても良い。
また、例えば、ブレーキペダルを踏み込む等の、制動装置32を作動させる操作を所定操作とした場合においては、所定条件は、所定操作に後続して、例えばブレーキペダルの踏み込みを止める等の、制動装置32による制動を解除させる操作である特定操作がなされた時である特定操作時に、成立することとしても良い。
具体的な例としては、特定部130は、所定操作時を分析対象期間の始期とし、その所定操作時の後に所定条件が成立した時を分析対象期間の終期とするように、分析対象期間を特定する。また、特定部130は、所定操作時より所定時間(例えば数秒、数十秒等)前を分析対象期間の始期とし、その所定操作時の後に所定条件が成立した時を分析対象期間の終期とするように、分析対象期間を特定することとしても良い。また、特定部130は、所定操作時を分析対象期間の始期とする代わりに、所定操作時においてバッファ120に格納されている通信データのうち、最も早くバッファ120に格納された通信データが受信部110に受信された時を分析対象期間の始期として、分析対象期間を特定しても良い。
特定部130により特定された分析対象期間は、処理部140において、分析のための処理の対象とする通信データと、分析のための処理の対象としない通信データを分別するために用いられる。
処理部140は、車両30外の、外部装置であるサーバ装置等と通信する外部通信部141を含む。処理部140は、プログラムを実行するプロセッサ101、外部通信I/F104等により実現される。
処理部140は、受信部110により受信された通信データを、特定部130で特定された分析対象期間内に受信された通信データである分析対象通信データと、分析対象期間外に受信された通信データである分析対象外通信データとに分別し、分別の結果に基づいて分析対象通信データについての分析のための所定処理を実行する。分析対象期間の始期及び終期は分析対象期間に含まれる。分析のための所定処理は、分析処理、或いは、分析のために有用な処理であり、分析対象通信データと分析対象外通信データとを区別して行われる、予め定められた処理である。
処理部140は、分析のための所定処理として、例えば、車両30外のサーバ装置に分析対象通信データについての分析を行わせるために、受信部110に受信されてバッファ120に格納された通信データのうち、分析対象外通信データを含まず分析対象通信データを含む分析用情報を、外部通信部141により、そのサーバ装置に送信する処理を行う。
分析用情報は、分析対象通信データについての分析に用いられる情報であり、例えば所謂通信ログである。分析用情報は、分析対象通信データの内容を含む他、更に、例えば、受信部110による分析対象通信データの受信時を示す情報、分析対象通信データの受信頻度を示す情報等を含んでも良い。また、分析用情報は、受信部110に受信された、分析対象通信データを含むメッセージが有するメッセージID等の情報を含んでも良い。例えば、受信部110が、通信データを含むメッセージをバス40から受信する毎に、その通信データに、受信時、受信頻度、メッセージID等の情報を付してバッファ120に格納しておけば、処理部140はその情報をバッファ120から取得できる。また、分析用情報は、車両30の識別情報等に基づくデジタル署名を含んでも良い。分析用情報において分析対象通信データ等に対して圧縮、暗号化等のデータ変換を行っていても良い。
外部通信部141による分析用情報のサーバ装置への送信は、いかなる通信方式を用いて行われても良く、例えば、車載ネットワークシステム10において送信単位、送信タイミング等を任意に定め得る。例えば、外部通信部141は、1つの通信データとその通信データの受信時を示す情報等を分析用情報の1つの送信単位として、1つ或いは予め定められた数の送信単位毎に、逐次送信を行うこととしても良い。
サーバ装置は、分析用情報を逐次受信して収集し、分析用情報に基づいて、例えば、統計処理、多変量解析等により分析を行う。この分析により、例えば、車両30において適切に自動運転がなされたか否かの検証、車載ネットワークのセキュリティ上の問題の検出、セキュリティ対策の策定等が可能となり得る。
また、処理部140は、分析のための所定処理として、例えば、分析用情報を記録するための記録媒体150に、分析対象外通信データを含まず分析対象通信データを含む分析用情報を記録する処理を行っても良い。分析のための所定処理は、この他の処理であっても良い。分析のための所定処理の他の具体例としては、次のような処理が挙げられる。
例えば、処理部140が、受信部110により受信された通信データを全て一旦、記録媒体に格納し、その記録媒体から分析対象外通信データのみを削除する処理である。また、例えば、処理部140が、受信部110により受信された通信データのうち分析対象通信データのみを対象として、予め定められた分析用の演算等の情報処理を行うことで分析し、その分析結果を出力する処理である。また、例えば、処理部140が、受信部110により受信された通信データのうち分析対象通信データのみを分析することで、各分析対象通信データが異常な状態であるか否かの判定を行い、判定結果が異常となった分析対象通信データに係る分析用情報を、外部通信部141により、車両30外のサーバ装置に送信する処理である。
[1.4 情報処理装置100の動作]
図5は、情報処理装置100における所定情報処理の一例を示すフローチャートである。情報処理装置100は、図5に示す所定情報処理を、例えば、車両30の乗員により自動運転開始の操作がなされて車両30のECU20e等により自動運転が開始されたことを検知した場合に開始し、自動運転終了の操作がなされて車両30のECU20e等により自動運転が中止されたことを検知した場合に中止する。
図5は、情報処理装置100における所定情報処理の一例を示すフローチャートである。情報処理装置100は、図5に示す所定情報処理を、例えば、車両30の乗員により自動運転開始の操作がなされて車両30のECU20e等により自動運転が開始されたことを検知した場合に開始し、自動運転終了の操作がなされて車両30のECU20e等により自動運転が中止されたことを検知した場合に中止する。
情報処理装置100は、自動運転の開始及び中止の検知を、いかなる方法で行っても良い。例えば、ECU20eが自動運転の開始及び終了に際してそれぞれ予め定められたメッセージIDのメッセージを送信し、情報処理装置100は、そのメッセージの受信により、自動運転の開始及び中止を検知しても良い。
以下、図5に即して、情報処理装置100の動作例を説明する。ここでは、受信部110が、バス40上に現れた全てのメッセージを受信する例を用いて説明する。
情報処理装置100は、受信部110により、メッセージがバス40に現れるとそのメッセージを受信する(ステップS11でYes)。受信部110は、受信したメッセージに係る通信データ(例えばデータフィールドの内容)を、例えばメッセージID、受信時を示す情報等を付して、バッファ120に格納する(ステップS12)。ステップS11で、メッセージを受信しない場合には(ステップS11でNo)、受信部110は、ステップS12での処理をスキップする。
また、情報処理装置100は、車両30の乗員による所定操作がなされると(ステップS13でYes)、特定部130により、その所定操作がなされた時である所定操作時を検知する(ステップS14)。情報処理装置100は、例えば所定操作がなされたことを示す通信データを含むメッセージが受信部110により受信されたことをバッファ120の内容から検知して、その通信データが受信された時を、所定操作時として検知する。
ここでは、所定操作は、ブレーキペダルの踏み込み等といった、車両30の制動装置32を作動させる操作であるとする。制動装置32は、ブレーキペダルの踏み込み等の所定操作がなされてから、その踏み込みを止める等の特定操作がなされるまで車両30の移動を抑制することになる。
特定部130は、所定操作時に基づいて分析対象期間の始期を特定する(ステップS15)。ステップS15で特定部130は、例えば、所定操作時を分析対象期間の始期として特定する。
ステップS13で、所定操作がなされない場合には(ステップS13でNo)、特定部130は、ステップS14~S15での処理をスキップする。
また、情報処理装置100の特定部130は、分割対象期間の始期だけが特定された状態において、分析対象期間の終期についての所定条件が成立していれば(ステップS16でYes)、分析対象期間の終期を特定する(ステップS17)。ここでは、所定条件は、車両30が停止した場合に成立するものとする。この場合に、特定部130は、ステップS16で、例えば所定操作時の後において車両30の車速がゼロへと変化したことを示す通信データがバッファ120に格納されたことを確認して、ステップS17で、その通信データの受信時を、分析対象期間の終期として特定する。なお、車両30の停止の検知は、いかなる方法で行われても良い。また、ステップS16における所定条件を、例えば、特定操作がなされた場合に成立すること等としても良い。ステップS16で、所定条件が成立しない場合には(ステップS16でNo)、特定部130は、ステップS17での処理をスキップする。
また、情報処理装置100の処理部140は、バッファ120内に、分析対象期間内に受信部110に受信された、記録媒体150へ未だ記録していない通信データが、格納されているか否かを判定し(ステップS18)、肯定的に判定した場合に(ステップS18でYes)、その分析対象期間内に受信された通信データ、つまり分析対象通信データを含む分析用情報を記録媒体150に記録する(ステップS19)。ステップS18で、分析対象期間内の未記録の通信データがない場合には(ステップS18でNo)、処理部140は、ステップS19での処理をスキップする。
また、処理部140は、バッファ120内に、分析対象期間内に受信部110に受信された、未だ送信していない通信データが格納されているか否かを判定し(ステップS20)、肯定的に判定した場合に(ステップS20でYes)、その分析対象期間内に受信された通信データ、つまり分析対象通信データを含む分析用情報を外部通信部141によりサーバ装置へと送信する(ステップS21)。ステップS20で、分析対象期間内の未送信の通信データがない場合には(ステップS20でNo)、処理部140は、ステップS21での処理をスキップする。
所定情報処理では、図5に示すように、ステップS11、S13、S16、S18、S20での判断処理が繰り返し行われることになる。ステップS18及びステップS20では、判定の際に、既にステップS15で分析対象期間の始期が特定されていなければ、否定的な判定(ステップS18及びステップS20でNo)がなされる。既にステップS15で分析対象期間の始期が特定され、ステップS17で分析対象期間の終期が特定されていない間において受信された通信データは、分析対象期間内に受信された通信データと取り扱うことができる。
また、処理部140は、ステップS18及びステップS20での判定の際に、既にステップS17で分析対象期間の終期が特定されていれば、その終期までに受信された通信データを、分析対象期間内に受信された通信データと取り扱い、その終期より後に受信された通信データを、分析対象期間内に受信された通信データではないと取り扱う。
また、処理部140は、ステップS19で、記録媒体150に記録した分析対象通信データを含む分析用情報を更に外部通信部141によってサーバ装置に送信させ、ステップS20及びステップS21を省略しても良い。
また、バッファ120には、通信データ毎に、記録済みか否か、或いは、送信済みか否かを示すフラグを付し、処理部140がそのフラグを確認し更新しても良い。
また、処理部140は、例えば、通信データに対応する分析用情報のサーバ装置への送信等がなされた際、或いはその送信等のために通信データをバッファ120から読み出した際に、バッファ120からその通信データを削除することとしても良い。
[1.5 実施の形態1の効果]
車載ネットワークシステム10では、自動運転機能を有する車両30においてECU20a~20fがバス40を介して授受するメッセージに係る通信データのうち、車両30の乗員の操作に関連して分別された分析対象通信データのみを、分析のための処理の処理対象とする。これにより、効率的に分析のための処理を行うことが可能となる。
車載ネットワークシステム10では、自動運転機能を有する車両30においてECU20a~20fがバス40を介して授受するメッセージに係る通信データのうち、車両30の乗員の操作に関連して分別された分析対象通信データのみを、分析のための処理の処理対象とする。これにより、効率的に分析のための処理を行うことが可能となる。
情報処理装置100は、ECU間の通信に係る分析のための処理として、外部の分析機能を有するサーバ装置へ、通信データに係る分析用情報の送信を行う。この場合に、通信データは、バス40を流れた通信データのうち、乗員により所定操作がなされた時等を始期とする分析対象期間内にバス40から受信された分析対象通信データに絞り込まれる。この絞り込みにより、車両30での通信の分析のために、サーバ装置へ送信される分析用情報のデータ量は比較的小さく抑えられるので、分析用情報の送信に必要な通信帯域は比較的小さく抑えられる。
また、後に分析を可能とするために、情報処理装置100は、通信データのうち分析対象通信データに係る分析用情報を、記録媒体150に記録する。これにより、記録媒体150に記録される分析用情報のデータ量は、バス40を流れた全ての通信データに係る分析用情報を記録する場合より小さく抑えられる。
なお、処理部140が、受信部110により受信された通信データのうち分析対象通信データのみを対象として、分析用の演算等の情報処理を行うことで分析する場合においても、全ての通信データを対象とする場合に比べて、必要な演算量等といった計算資源は、小さく抑えられる。
(実施の形態2)
本実施の形態では、実施の形態1で示した車載ネットワークシステム10を部分的に変形して、情報処理装置100の代わりに、情報処理装置と外部通信装置とを有するようにした車載ネットワークシステムについて説明する。
本実施の形態では、実施の形態1で示した車載ネットワークシステム10を部分的に変形して、情報処理装置100の代わりに、情報処理装置と外部通信装置とを有するようにした車載ネットワークシステムについて説明する。
実施の形態1では、図3に示すように、バス40に接続された情報処理装置100が、車両30の外部の装置と通信する外部通信I/F104等で実現される外部通信部141を有する例を示した。これに対して、本実施の形態では、情報処理装置100を部分的に変形したものである情報処理装置が外部通信I/F104を有さず、バス40に接続されて外部通信I/F104と同様の外部通信I/Fを有する外部通信装置と連携する例を示す。
[2.1 情報処理装置100a及び外部通信装置200の構成]
本実施の形態に係る車載ネットワークシステムは、図6に示すように、バス40に接続された情報処理装置100a及び外部通信装置200を有する。本実施の形態に係る車載ネットワークシステムは、ここで特に説明しない点については実施の形態1で示した車載ネットワークシステム10(図1参照)と同様である。
本実施の形態に係る車載ネットワークシステムは、図6に示すように、バス40に接続された情報処理装置100a及び外部通信装置200を有する。本実施の形態に係る車載ネットワークシステムは、ここで特に説明しない点については実施の形態1で示した車載ネットワークシステム10(図1参照)と同様である。
図6は、情報処理装置100a及び外部通信装置200の構成を示す機能ブロック図である。また、図7は、本実施の形態に係る情報処理装置100a及び外部通信装置200のハードウェア構成の一例を示す。図7に示すように、情報処理装置100aは、実施の形態1で示した情報処理装置100から外部通信I/F104を除いた構成を有する。情報処理装置100aの構成要素は、実施の形態1の情報処理装置100の構成要素と概ね同様なので、同じ符号を用いて説明する。なお、情報処理装置100aは、ここで特に説明しない点については実施の形態1で示した情報処理装置100と同様である。
外部通信装置200は、ECUのハードウェア構成に加えて、車両30の外部に所在するサーバ装置等の外部装置と通信するための通信回路を有する。図7の例では、外部通信装置200は、プロセッサ201、メモリ202、CAN通信I/F(インタフェース)203、及び、外部通信I/F204を有する。例えばプロセッサ201が、メモリ202に記憶されたプログラムに従って動作することにより、外部通信装置200は各種機能を実現することになる。外部通信装置200は、機能面では、図6に示すように、受信部210と、外部送信部241とを含んで構成される。受信部210は、CAN通信I/F203等で実現され、予め定められたメッセージIDを有し、分析用情報等を含むメッセージを受信してメッセージの内容を外部送信部241に伝える。外部送信部241は、外部通信I/F204等で実現され、車両30外のサーバ装置に、分析用情報を送信する。
情報処理装置100aは、機能面では、図6に示すように、受信部110と、バッファ120と、特定部130と、処理部140と、記録媒体150と、送信部160とを含んで構成される。但し、処理部140は、実施の形態1とは多少相違し、外部通信部141を含まず、分析対象通信データに係る分析用情報を車両30外には送信しない。送信部160は、CAN通信I/F103、プログラムを実行するプロセッサ101等により実現され、処理部140の制御下で、予め定められたメッセージIDを有し、分析用情報等を含むメッセージをバス40に送信する。
情報処理装置100aにおける処理部140は、受信部110により受信された通信データを、特定部130で特定された分析対象期間内に受信された通信データである分析対象通信データと、分析対象期間外に受信された通信データである分析対象外通信データとに分別し、分別の結果に基づいて分析対象通信データについての分析のための所定処理を実行する。
処理部140は、分析のための所定処理として、記録媒体150に、分析対象外通信データを含まず分析対象通信データを含む分析用情報を記録する処理を行う。また、処理部140は、分析のための所定処理として、外部通信装置200と連携して車両30外のサーバ装置に分析対象通信データについての分析を行わせるための処理を行う。具体的には、処理部140は、分析のための所定処理として、バッファ120に格納された通信データのうち、分析対象外通信データを含まず分析対象通信データを含む分析用情報を、外部通信装置200が受信するように予め定められたメッセージIDを有するメッセージに含ませてバス40に逐次送信させるように送信部160を制御する。送信部160は、例えば、記録媒体150に記録された分析用情報をそのメッセージに含ませることとしてもよい。なお、外部通信装置200は、受信部210でその分析用情報を含むメッセージを逐次受信し、その分析用情報を、外部送信部241により、車両30外のサーバ装置に送信する。
また、処理部140は、分析のための所定処理として、バッファ120に格納された通信データのうち、分析対象通信データのみに基づいて、分析用の演算等の情報処理を行うことで一次分析して、その分析対象通信データ及び一次分析の結果を、記録媒体150に記録し、更に、送信部160に、外部通信装置200が受信するように予め定められたメッセージIDを有するメッセージに含ませてバス40に逐次送信させても良い。この場合には、外部通信装置200は、その一次分析の結果等を含むメッセージを逐次受信し、例えば、その一次分析の結果が異常となった分析対象通信データを示す分析用情報を、外部通信I/F204により、車両30外のサーバ装置に送信する。なお、情報処理装置100aでの分析を一次分析とも称する。
なお、分析用情報のサーバ装置への送信の面においては、本実施の形態における情報処理装置100aと外部通信装置200とは、組み合わせることで、実施の形態1における情報処理装置100に相当する1つの情報処理装置として機能する。
情報処理装置100aと外部通信装置200との間での処理の分担を、変更しても良い。例えば、情報処理装置100aは、特定部130が特定した分析対象期間を示す情報を、外部通信装置200が受信するように予め定められたメッセージIDを有するメッセージに含ませてバス40に送信しても良い。この場合には、外部通信装置200は、そのメッセージの受信により分析対象期間を把握して、バス40から受信したメッセージに係る通信データを分析対象期間内の分析対象通信データと、分析対象期間外の分析対象外通信データとに分別し、分析対象通信データについての分析用情報をサーバ装置に送信し得る。
[2.2 情報処理装置100aの動作]
図8は、情報処理装置100aにおける所定情報処理の一例を示すフローチャートである。同図において、図5で示した所定情報処理と同じステップは、図5と同じ符号を付しており、ここでの説明を適宜省略する。情報処理装置100aは、図8に示す所定情報処理を、例えば、車両30の乗員により自動運転開始の操作がなされて車両30のECU20e等により自動運転が開始されたことを検知した場合に開始し、自動運転終了の操作がなされて車両30のECU20e等により自動運転が中止されたことを検知した場合に中止する。
図8は、情報処理装置100aにおける所定情報処理の一例を示すフローチャートである。同図において、図5で示した所定情報処理と同じステップは、図5と同じ符号を付しており、ここでの説明を適宜省略する。情報処理装置100aは、図8に示す所定情報処理を、例えば、車両30の乗員により自動運転開始の操作がなされて車両30のECU20e等により自動運転が開始されたことを検知した場合に開始し、自動運転終了の操作がなされて車両30のECU20e等により自動運転が中止されたことを検知した場合に中止する。
以下、図8に即して、情報処理装置100aの動作例について説明する。ここでは、受信部110が、バス40上に現れたメッセージのうち、特定条件を満たすメッセージIDを有するメッセージのみを受信する例を用いて説明する。受信部110は、受信されるべき通信データを含むメッセージのメッセージIDを列挙した受信IDリストを用いる。
情報処理装置100aは、受信部110により、受信IDリストに示されたメッセージIDを有するメッセージがバス40に現れるとその通信データを含むメッセージを受信する(ステップS31でYes)。受信部110は、受信したメッセージに係る通信データ、例えばデータフィールドの内容を、例えばメッセージID、受信時を示す情報等を付して、バッファ120に格納する(ステップS32)。ステップS31で、受信IDリストに示されたメッセージIDを有するメッセージを受信しない場合には(ステップS31でNo)、受信部110は、ステップS32での処理をスキップする。
また、情報処理装置100aは、車両30の乗員による所定操作がなされると(ステップS13でYes)、特定部130により所定操作時を検知し(ステップS14)、所定操作時に基づいて分析対象期間の始期を特定する(ステップS15)。所定操作として、例えば、制動装置32、操舵装置33、警報装置34等の、車両30の乗員にとって異常が感じられた場合等に操作される装置に対する操作が予め定められる。ステップS13で、所定操作がなされない場合には(ステップS13でNo)、特定部130は、ステップS14~S15での処理をスキップする。
また、情報処理装置100aの特定部130は、分析対象期間の終期についての所定条件が成立していれば(ステップS16でYes)、分析対象期間の終期を特定する(ステップS17)。ステップS16で、分析対象期間の終期についての所定条件が成立しない場合には(ステップS16でNo)、特定部130は、ステップS17での処理をスキップする。
また、情報処理装置100aの処理部140は、バッファ120内に、分析対象期間内に受信部110に受信された、記録媒体150への未だ分析していない通信データが格納されているか否かを判定し(ステップS33)、肯定的に判定した場合に(ステップS33でYes)、その分析対象期間内に受信された通信データ、つまり分析対象通信データを一次分析する(ステップS34)。処理部140は、一次分析を、いかなる演算により実行しても良く、例えば、予め定められた異常か否かの判定の基準に基づいて判定を行い、異常か否かを示す情報を分析結果として生成する。
続いて、処理部140は、分析対象通信データ及び一次分析の結果を、記録媒体150に記録し(ステップS35)、送信部160を制御することで、分析対象通信データ及び一次分析の結果を含む1つ又は複数のメッセージをCANプロトコルに従ってバス40に送信する(ステップS36)。これにより、例えば、外部通信装置200は、そのメッセージを受信部210で受信し、一次分析の結果に応じて、外部送信部241で分析対象通信データに基づく分析用情報を生成して、その分析用情報を車両30外のサーバ装置に送信する。ステップS33で、否定的な判定をした場合には(ステップS33でNo)、処理部140は、ステップS34~S36での処理をスキップする。
所定情報処理では、図8に示すように、ステップS31、S13、S16、S33での判断処理が繰り返し行われることになる。ステップS33では、判定の際に、既にステップS15で分析対象期間の始期が特定されていなければ、否定的な判定(ステップS33でNo)がなされる。既にステップS15で分析対象期間の始期が特定され、ステップS17で分析対象期間の終期が特定されていない間において受信された通信データは、分析対象期間内に受信された通信データと取り扱うことができる。
また、処理部140は、ステップS33での判定の際に、既にステップS17で分析対象期間の終期が特定されていれば、その終期までに受信された通信データを、分析対象期間内に受信された通信データと取り扱い、その終期より後に受信された通信データを、分析対象期間内に受信された通信データではないと取り扱う。
また、バッファ120には、通信データ毎に、一次分析済みか否かを示すフラグを付し、処理部140がそのフラグを確認し更新しても良い。また、処理部140は、例えば、通信データに対応する一次分析を行う際にバッファ120からその通信データを削除することとしても良い。
[2.3 実施の形態2の効果]
本実施の形態に係る車載ネットワークシステム10では、自動運転機能を有する車両30においてECU20a~20fがバス40を介して授受するメッセージに係る通信データのうち、車両30の乗員の操作に関連して分別された分析対象通信データのみを、分析のための処理の処理対象とする。図8に示す所定情報処理により、情報処理装置100aは、受信IDリストにより特定のメッセージIDを有するメッセージに含まれる通信データをバス40から逐次取得するが、その通信データのうち、分析対象期間内の通信データについてのみ分析、記録媒体150への記録等の対象とする。制動装置32、操舵装置33、警報装置34等の、車両30の乗員にとって不快感、不安、恐怖等が感じられた場合等に操作されると推定される装置に対する操作を所定操作として定めておくことにより、所定操作時に基づいて特定される分析対象期間内の通信データは、車両30の異常状態に関連し得る点で、自動運転技術の進展、セキュリティ確保等を目的とする分析の対象として比較的重要な情報となり得る。従って、情報処理装置100aは、所定情報処理により、重要な情報に係る通信データに対して、効率的に、分析のための処理を行うことができる。
本実施の形態に係る車載ネットワークシステム10では、自動運転機能を有する車両30においてECU20a~20fがバス40を介して授受するメッセージに係る通信データのうち、車両30の乗員の操作に関連して分別された分析対象通信データのみを、分析のための処理の処理対象とする。図8に示す所定情報処理により、情報処理装置100aは、受信IDリストにより特定のメッセージIDを有するメッセージに含まれる通信データをバス40から逐次取得するが、その通信データのうち、分析対象期間内の通信データについてのみ分析、記録媒体150への記録等の対象とする。制動装置32、操舵装置33、警報装置34等の、車両30の乗員にとって不快感、不安、恐怖等が感じられた場合等に操作されると推定される装置に対する操作を所定操作として定めておくことにより、所定操作時に基づいて特定される分析対象期間内の通信データは、車両30の異常状態に関連し得る点で、自動運転技術の進展、セキュリティ確保等を目的とする分析の対象として比較的重要な情報となり得る。従って、情報処理装置100aは、所定情報処理により、重要な情報に係る通信データに対して、効率的に、分析のための処理を行うことができる。
(他の実施の形態等)
以上のように、本発明に係る技術の例示として実施の形態1、2を説明した。しかしながら、本発明に係る技術は、これに限定されず、適宜、変更、置き換え、付加、省略等を行った実施の形態にも適用可能である。例えば、以下のような変形例も本発明の一実施態様に含まれる。
以上のように、本発明に係る技術の例示として実施の形態1、2を説明した。しかしながら、本発明に係る技術は、これに限定されず、適宜、変更、置き換え、付加、省略等を行った実施の形態にも適用可能である。例えば、以下のような変形例も本発明の一実施態様に含まれる。
(1)上記実施の形態では、情報処理装置が自動運転機能を有する車両30のネットワークからECU間で授受される通信データを収集する例を示したが、車両30を、自動運転機能を有し搭乗可能なロボット等に置き換えても良い。上述の技術は、移動体を乗員の操作を受けずに移動させる機能である自動運転機能を有する移動体に、適用可能である。また、自動運転機能は、移動体を自動的に移動させるいかなる機能であっても良く、運転経路等を自律的に選定して完全な自動運転を行うものであっても、運転者による移動体の操縦を支援する程度のものであっても良い。また、上述の技術は、乗員の操作を受けずに搭乗用装置を作動させる機能である自動運転機能を有する搭乗用装置に、適用可能である。この搭乗用装置は、乗員が搭乗可能な装置であり、例えば移動するロボット、車両30等といった移動体であり、また例えば、移動しないロボット、機械等である。
(2)上記実施の形態では、CANプロトコルにおけるデータフレームについてのフォーマットとして、標準IDフォーマット(図2参照)を示したが、拡張IDフォーマットであっても良く、データフレームのID(つまりメッセージID)は、拡張IDフォーマットでの拡張ID等であっても良い。
また、上記実施の形態で示したCANプロトコルは、TTCAN(Time-Triggered CAN)、CANFD(CAN with Flexible Data Rate)等の派生的なプロトコルも包含する広義の意味のものとしても良い。また、車両30等の移動体でECU間の通信に用いられるネットワークは、CANプロトコルに従ったネットワークに限られず、他のネットワークでも良い。ECUが通信データの授受を行うためのネットワークで用いられる、CAN以外のプロトコルとして、例えば、Ethenet(登録商標)、LIN(Local Interconnect Network)、MOST(登録商標)(Media Oriented Systems Transport)、FlexRay(登録商標)、ブローダーリーチプロトコル等が挙げられる。
(3)上記実施の形態における各ECUは、例えば、プロセッサ、メモリ等のデジタル回路、アナログ回路、通信回路等を含む装置であることとしたが、ハードディスク装置、ディスプレイその他のハードウェア構成要素を含んでいても良い。また、上記実施の形態で示した各装置は、メモリに記憶されたプログラムがプロセッサにより実行されてソフトウェア的に機能を実現する代わりに、専用のハードウェア(デジタル回路等)によりその機能を実現することとしても良い。
(4)上記実施の形態で示した情報処理装置100、100aの機能的な構成要素間の機能分担は一例に過ぎず、任意に分担を変更しても良い。
(5)上記実施の形態で示した各種処理の手順(例えば図5、図8に示した手順等)の実行順序は、必ずしも、上述した通りの順序に制限されるものではなく、発明の要旨を逸脱しない範囲で、実行順序を入れ替えたり、複数の手順を並列に行ったり、その手順の一部を省略したりすることができる。
(6)上記実施の形態における各装置を構成する構成要素の一部又は全部は、1個のシステムLSI(Large Scale Integration:大規模集積回路)から構成されているとしても良い。システムLSIは、複数の構成部を1個のチップ上に集積して製造された超多機能LSIであり、具体的には、マイクロプロセッサ、ROM、RAM等を含んで構成されるコンピュータシステムである。RAMには、コンピュータプログラムが記録されている。マイクロプロセッサが、コンピュータプログラムに従って動作することにより、システムLSIは、その機能を達成する。
また、上記各装置を構成する構成要素の各部は、個別に1チップ化されていても良いし、一部又は全部を含むように1チップ化されても良い。また、ここでは、システムLSIとしたが、集積度の違いにより、IC(integrated circuit)、LSI、スーパーLSI、ウルトラLSIと呼称されることもある。また、集積回路化の手法はLSIに限るものではなく、専用回路又は汎用プロセッサで実現しても良い。LSI製造後に、プログラムすることが可能なFPGA(Field Programmable Gate Array)や、LSI内部の回路セルの接続や設定を再構成可能なリコンフィギュラブル・プロセッサを利用しても良い。更には、半導体技術の進歩又は派生する別技術によりLSIに置き換わる集積回路化の技術が登場すれば、当然、その技術を用いて機能ブロックの集積化を行っても良い。バイオ技術の適用等が可能性としてあり得る。
(7)上記各装置を構成する構成要素の一部又は全部は、各装置に脱着可能なICカード又は単体のモジュールから構成されているとしても良い。ICカード又はモジュールは、マイクロプロセッサ、ROM、RAM等から構成されるコンピュータシステムである。ICカード又はモジュールは、上記の超多機能LSIを含むとしても良い。マイクロプロセッサが、コンピュータプログラムに従って動作することにより、ICカード又はモジュールは、その機能を達成する。このICカード又はこのモジュールは、耐タンパ性を有するとしても良い。
(8)本発明の一態様としては、例えば図5、図8等に示す処理手順の全部又は一部を含む情報処理方法であるとしても良い。例えば、情報処理方法は、自動運転機能を有する車両30等の移動体に搭載された複数のECU間の通信についての分析用の情報を収集する、その移動体に搭載された情報処理装置において用いられる情報処理方法であってもよい。例えば、情報処理方法は、受信ステップ(例えばステップS11、S31)と、特定ステップ(例えばステップS13~S17)と、処理ステップ(例えばステップS19、S21、S34、S36)と、を含んでもよい。受信ステップ(例えばステップS11、S31)では、移動体における複数のECUが通信するネットワークで逐次送信された複数の通信データを受信する。特定ステップ(例えばステップS13~S17)では、移動体の乗員により移動体に対する所定操作がなされた時である所定操作時を検知して所定操作時を含む分析対象期間を特定する。処理ステップ(例えばステップS19、S21、S34、S36)では、受信ステップで受信された通信データを、分析対象期間内に受信された通信データである分析対象通信データと、分析対象期間外に受信された通信データである分析対象外通信データとに分別し、分別の結果に基づいて分析対象通信データについての分析のための所定処理を実行する。
また、本発明の一態様としては、この情報処理方法に係る所定情報処理をコンピュータにより実現するためのプログラム(コンピュータプログラム)であるとしても良いし、プログラムからなるデジタル信号であるとしても良い。
また、本発明の一態様としては、コンピュータプログラム又はデジタル信号をコンピュータで読み取り可能な記録媒体に記録したものとしても良い。コンピュータで読み取り可能な記録媒体は、例えば、フレキシブルディスク、ハードディスク、CD-ROM、MO(magneto-optical disc)、DVD(digital versatile disc)、DVD-ROM(digital versatile disc read-only memory)、DVD-RAM(digital versatile disc random access memory)、BD(Blu-ray(登録商標) Disc)、半導体メモリ等であってよい。また、これらの記録媒体に記録されているデジタル信号であるとしても良い。
また、本発明の一態様としては、プログラム又はデジタル信号を、電気通信回線、無線又は有線通信回線、インターネットを代表とするネットワーク、データ放送等を経由して伝送するものとしても良い。
また、本発明の一態様としては、マイクロプロセッサとメモリを有したコンピュータシステムであって、メモリは、上記プログラムを記録しており、マイクロプロセッサは、プログラムに従って動作するとしても良い。また、プログラム若しくはデジタル信号を記録媒体に記録して移送することにより、又は、プログラム若しくはデジタル信号を、ネットワーク等を経由して移送することにより、独立した他のコンピュータシステムにより実施するとしても良い。
(9)上記実施の形態及び上記変形例で示した各構成要素及び機能を任意に組み合わせることで実現される形態も本発明の範囲に含まれる。
本発明は、自動運転機能を有する車両又はそれ以外の搭乗用装置のネットワークシステム等において利用可能である。
10 車載ネットワークシステム
20a~20f 電子制御ユニット(ECU)
30 車両
31 エンジン
32 制動装置
33 操舵装置
34 警報装置
40 バス
100,100a 情報処理装置
101,201 プロセッサ(マイクロプロセッサ)
102,202 メモリ
103,203 CAN通信I/F
104,204 外部通信I/F
110,210 受信部
120 バッファ
130 特定部
140 処理部
141 外部通信部
150 記録媒体
160 送信部
200 外部通信装置
241 外部送信部
20a~20f 電子制御ユニット(ECU)
30 車両
31 エンジン
32 制動装置
33 操舵装置
34 警報装置
40 バス
100,100a 情報処理装置
101,201 プロセッサ(マイクロプロセッサ)
102,202 メモリ
103,203 CAN通信I/F
104,204 外部通信I/F
110,210 受信部
120 バッファ
130 特定部
140 処理部
141 外部通信部
150 記録媒体
160 送信部
200 外部通信装置
241 外部送信部
Claims (17)
- 自動運転機能を有する搭乗用装置に搭載された複数の電子制御ユニット間の通信についての分析用の情報を収集する情報処理装置であって、
前記搭乗用装置における前記複数の電子制御ユニットが通信するネットワークで逐次送信された複数の通信データを受信する受信部と、
前記搭乗用装置の乗員により前記搭乗用装置に対する所定操作がなされた時である所定操作時を検知して、当該所定操作時を含む分析対象期間を特定する特定部と、
前記受信部により受信された通信データを、前記分析対象期間内に受信された通信データである分析対象通信データと、前記分析対象期間外に受信された通信データである分析対象外通信データとに分別し、分別の結果に基づいて前記分析対象通信データについての分析のための所定処理を実行する処理部と、
を備える情報処理装置。 - 前記特定部は、前記受信部により受信された通信データに基づいて前記所定操作時を検知し、前記所定操作時から、当該所定操作時の後に所定条件が成立した時までの期間を含むように、前記分析対象期間を特定する、
請求項1記載の情報処理装置。 - 前記特定部は、前記所定操作時を前記分析対象期間の始期とするように、前記分析対象期間を特定する、
請求項2記載の情報処理装置。 - 前記特定部は、前記所定操作時より所定時間前を前記分析対象期間の始期とするように、前記分析対象期間を特定する、
請求項2記載の情報処理装置。 - 前記受信部により受信された通信データを格納可能なバッファをさらに備え、
前記特定部は、前記所定操作時において前記バッファに格納されている通信データのうち、最も早く前記バッファに格納された通信データが前記受信部に受信された時を前記分析対象期間の始期とするように、前記分析対象期間を特定する、
請求項2記載の情報処理装置。 - 前記受信部は、格納対象の通信データの前記バッファへの格納に際して、前記バッファに空き領域が無い場合には最も早く格納されていた通信データから順に上書き対象として、当該格納対象の通信データで上書きする、
請求項5記載の情報処理装置。 - 前記特定部は、前記所定操作時の後に前記所定条件が成立した時を前記分析対象期間の終期とするように、前記分析対象期間を特定する、
請求項2~5のいずれか一項に記載の情報処理装置。 - 前記搭乗用装置は移動体であり、
前記所定操作に応じて前記搭乗用装置の移動を抑制する制動装置を備え、
前記所定条件は、前記搭乗用装置が停止した場合に成立する、
請求項2~7のいずれか一項に記載の情報処理装置。 - 前記搭乗用装置は移動体であり、
前記搭乗用装置は、前記所定操作がなされてから特定操作がなされるまで前記搭乗用装置の移動を抑制する制動装置を備え、
前記特定部は、更に前記所定操作に後続して前記特定操作がなされた時である特定操作時を検知し、
前記所定条件は、前記特定操作時に成立する、
請求項2~7のいずれか一項に記載の情報処理装置。 - 前記搭乗用装置は移動体であり、
前記搭乗用装置は、操作に応じて前記搭乗用装置の移動方向を変更する操舵装置を備え、
前記所定操作は、前記操舵装置に対する操作である、
請求項2~7のいずれか一項に記載の情報処理装置。 - 前記搭乗用装置は、操作に応じて前記搭乗用装置の外部に警報を発する警報装置を備え、
前記所定操作は、前記警報装置に対する操作である、
請求項2~7のいずれか一項に記載の情報処理装置。 - 前記処理部は、前記搭乗用装置の外部の装置に前記分析対象通信データについての分析を行わせるために、前記所定処理として、前記分析対象外通信データを含まず前記分析対象通信データを含む分析用情報を前記搭乗用装置の外部に送信する処理を行う、
請求項1~11のいずれか一項に記載の情報処理装置。 - 前記処理部は、前記所定処理として、前記分析対象通信データについての分析に用いられる分析用情報を記録するための所定記録媒体に、前記分析対象外通信データを含まず前記分析対象通信データを含む分析用情報を記録する処理を行う、
請求項1~11のいずれか一項に記載の情報処理装置。 - 前記搭乗用装置は、車両であり、
前記複数の電子制御ユニットは、CAN(Controller Area Network)プロトコルに従ってバスを介して通信データを含むフレームの授受を行い、
前記情報処理装置は、前記バスに接続され、
前記受信部は、前記バスから通信データを含むフレームを逐次受信する、
請求項1~13のいずれか一項に記載の情報処理装置。 - 前記受信部は、IDフィールドの内容が特定条件を満たすデータフレームのデータフィールドの内容を前記通信データとして受信する、
請求項14記載の情報処理装置。 - 自動運転機能を有する搭乗用装置に搭載された複数の電子制御ユニット間の通信についての分析用の情報を収集する、当該搭乗用装置に搭載された情報処理装置において用いられる情報処理方法であって、
前記搭乗用装置における前記複数の電子制御ユニットが通信するネットワークで逐次送信された複数の通信データを受信する受信ステップと、
前記搭乗用装置の乗員により前記搭乗用装置に対する所定操作がなされた時である所定操作時を検知して、当該所定操作時を含む分析対象期間を特定する特定ステップと、
前記受信ステップで受信された通信データを、前記分析対象期間内に受信された通信データである分析対象通信データと、前記分析対象期間外に受信された通信データである分析対象外通信データとに分別し、分別の結果に基づいて前記分析対象通信データについての分析のための所定処理を実行する処理ステップと、
を含む情報処理方法。 - 自動運転機能を有する搭乗用装置に搭載された複数の電子制御ユニット間の通信についての分析用の情報を収集する、当該搭乗用装置に搭載されてマイクロプロセッサを備える情報処理装置に、
前記搭乗用装置における前記複数の電子制御ユニットが通信するネットワークで逐次送信された複数の通信データを受信する受信ステップと、
前記搭乗用装置の乗員により前記搭乗用装置に対する所定操作がなされた時である所定操作時を検知して、当該所定操作時を含む分析対象期間を特定する特定ステップと、
前記受信ステップで受信された通信データを、前記分析対象期間内に受信された通信データである分析対象通信データと、前記分析対象期間外に受信された通信データである分析対象外通信データとに分別し、分別の結果に基づいて前記分析対象通信データについての分析のための所定処理を実行する処理ステップと、
を実行させるためのプログラム。
Applications Claiming Priority (2)
| Application Number | Priority Date | Filing Date | Title |
|---|---|---|---|
| JP2017-068680 | 2017-03-30 | ||
| JP2017068680A JP2018170728A (ja) | 2017-03-30 | 2017-03-30 | 情報処理装置、情報処理方法及びプログラム |
Publications (1)
| Publication Number | Publication Date |
|---|---|
| WO2018179630A1 true WO2018179630A1 (ja) | 2018-10-04 |
Family
ID=63677724
Family Applications (1)
| Application Number | Title | Priority Date | Filing Date |
|---|---|---|---|
| PCT/JP2017/045902 Ceased WO2018179630A1 (ja) | 2017-03-30 | 2017-12-21 | 情報処理装置、情報処理方法及びプログラム |
Country Status (2)
| Country | Link |
|---|---|
| JP (1) | JP2018170728A (ja) |
| WO (1) | WO2018179630A1 (ja) |
Cited By (1)
| Publication number | Priority date | Publication date | Assignee | Title |
|---|---|---|---|---|
| US12296841B2 (en) * | 2021-12-10 | 2025-05-13 | Toyota Jidosha Kabushiki Kaisha | Information processing apparatus and information processing method |
Families Citing this family (1)
| Publication number | Priority date | Publication date | Assignee | Title |
|---|---|---|---|---|
| KR102119638B1 (ko) * | 2018-11-29 | 2020-06-08 | 주식회사 이에스피 | 자율주행차량의 정보활용을 위한 데이터 취득 시스템, 데이터 취득 서버 및 방법 |
Citations (3)
| Publication number | Priority date | Publication date | Assignee | Title |
|---|---|---|---|---|
| JP2001236586A (ja) * | 2000-02-24 | 2001-08-31 | Honda Motor Co Ltd | 車両用監視装置及び車両用監視システム |
| JP2007293536A (ja) * | 2006-04-24 | 2007-11-08 | Denso Corp | 事故情報収集システムおよび事故情報記録装置 |
| JP2012181686A (ja) * | 2011-03-01 | 2012-09-20 | Denso Corp | 車両用データ記録装置 |
-
2017
- 2017-03-30 JP JP2017068680A patent/JP2018170728A/ja active Pending
- 2017-12-21 WO PCT/JP2017/045902 patent/WO2018179630A1/ja not_active Ceased
Patent Citations (3)
| Publication number | Priority date | Publication date | Assignee | Title |
|---|---|---|---|---|
| JP2001236586A (ja) * | 2000-02-24 | 2001-08-31 | Honda Motor Co Ltd | 車両用監視装置及び車両用監視システム |
| JP2007293536A (ja) * | 2006-04-24 | 2007-11-08 | Denso Corp | 事故情報収集システムおよび事故情報記録装置 |
| JP2012181686A (ja) * | 2011-03-01 | 2012-09-20 | Denso Corp | 車両用データ記録装置 |
Cited By (1)
| Publication number | Priority date | Publication date | Assignee | Title |
|---|---|---|---|---|
| US12296841B2 (en) * | 2021-12-10 | 2025-05-13 | Toyota Jidosha Kabushiki Kaisha | Information processing apparatus and information processing method |
Also Published As
| Publication number | Publication date |
|---|---|
| JP2018170728A (ja) | 2018-11-01 |
Similar Documents
| Publication | Publication Date | Title |
|---|---|---|
| CN109843653B (zh) | 异常检测装置以及异常检测方法 | |
| US11398116B2 (en) | Anomaly detection electronic control unit, in-vehicle network system, and anomaly detection method | |
| JP6839846B2 (ja) | 情報処理装置、情報処理方法及びプログラム | |
| US11165851B2 (en) | System and method for providing security to a communication network | |
| CN110494330B (zh) | 车辆监视装置、不正当检测服务器、以及控制方法 | |
| US10440120B2 (en) | System and method for anomaly detection in diagnostic sessions in an in-vehicle communication network | |
| US11190533B2 (en) | Anomaly detection electronic control unit, onboard network system, and anomaly detection method | |
| CN114514731B (zh) | 车辆日志发送装置、车辆日志收集系统、车辆日志发送方法以及保存优先级变更装置 | |
| CN107431625B (zh) | 网关装置、车载网络系统以及转送方法 | |
| JP7030957B2 (ja) | 自動車用サイバーセキュリティ | |
| WO2017038351A1 (ja) | 車載ネットワーク装置 | |
| CN109076016B (zh) | 非法通信检测基准决定方法、决定系统以及记录介质 | |
| CN112367318A (zh) | 安全处理方法以及计算机 | |
| JP2019008618A (ja) | 情報処理装置、情報処理方法及びプログラム | |
| WO2018110046A1 (ja) | 制御装置、制御システム、制御方法、制御プログラムおよび記憶媒体 | |
| WO2021019636A1 (ja) | セキュリティ装置、インシデント対応処理方法、プログラム、及び記憶媒体 | |
| WO2018179630A1 (ja) | 情報処理装置、情報処理方法及びプログラム | |
| CN120902769A (zh) | 认证方法、认证系统以及认证装置 | |
| JP2019209961A (ja) | 情報処理装置、監視方法、プログラム及びゲートウェイ装置 | |
| JP2019146145A (ja) | 通信装置、通信方法及びプログラム | |
| CN113300927B (zh) | 网关装置、车载网络系统以及转送方法 | |
| JP6519829B1 (ja) | 電子制御装置、監視方法、プログラム及びゲートウェイ装置 | |
| JP2019146144A (ja) | 情報処理装置、情報処理方法及びプログラム |
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: 17903600 Country of ref document: EP Kind code of ref document: A1 |
|
| NENP | Non-entry into the national phase |
Ref country code: DE |
|
| 122 | Ep: pct application non-entry in european phase |
Ref document number: 17903600 Country of ref document: EP Kind code of ref document: A1 |