WO2020111134A1 - システム、サーバコンピュータ、車載装置、制御方法、半導体集積回路及びコンピュータプログラム - Google Patents

システム、サーバコンピュータ、車載装置、制御方法、半導体集積回路及びコンピュータプログラム Download PDF

Info

Publication number
WO2020111134A1
WO2020111134A1 PCT/JP2019/046406 JP2019046406W WO2020111134A1 WO 2020111134 A1 WO2020111134 A1 WO 2020111134A1 JP 2019046406 W JP2019046406 W JP 2019046406W WO 2020111134 A1 WO2020111134 A1 WO 2020111134A1
Authority
WO
WIPO (PCT)
Prior art keywords
sensor data
unit
vehicle
state
buffer
Prior art date
Application number
PCT/JP2019/046406
Other languages
English (en)
French (fr)
Inventor
明紘 小川
Original Assignee
住友電気工業株式会社
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by 住友電気工業株式会社 filed Critical 住友電気工業株式会社
Priority to CN201980073300.3A priority Critical patent/CN112955943B/zh
Priority to JP2020557785A priority patent/JP7484721B2/ja
Priority to DE112019005963.7T priority patent/DE112019005963T5/de
Priority to US17/295,442 priority patent/US11790771B2/en
Publication of WO2020111134A1 publication Critical patent/WO2020111134A1/ja

Links

Images

Classifications

    • GPHYSICS
    • G08SIGNALLING
    • G08GTRAFFIC CONTROL SYSTEMS
    • G08G1/00Traffic control systems for road vehicles
    • G08G1/01Detecting movement of traffic to be counted or controlled
    • G08G1/0104Measuring and analyzing of parameters relative to traffic conditions
    • G08G1/0108Measuring and analyzing of parameters relative to traffic conditions based on the source of data
    • G08G1/0112Measuring and analyzing of parameters relative to traffic conditions based on the source of data from the vehicle, e.g. floating car data [FCD]

Definitions

  • This disclosure relates to a system, a server computer, an in-vehicle device, a control method, a semiconductor integrated circuit, and a computer program.
  • the driving support system collects sensor information from a device (hereinafter referred to as an infrastructure sensor) equipped with various sensor devices (camera, radar, etc.) installed on the road and its surroundings, and analyzes it to obtain traffic information. Providing (accidents, traffic jams, etc.) to the vehicle as driving support information.
  • a device hereinafter referred to as an infrastructure sensor
  • various sensor devices cameras, radar, etc.
  • Providing Providing (accidents, traffic jams, etc.) to the vehicle as driving support information.
  • communication lines mobile communication lines
  • information from not only infrastructure sensors but also sensor devices installed in vehicles is collected and used effectively for driving assistance (useful for driving. It is also proposed to provide it as driving support information).
  • V means a vehicle
  • X means something else.
  • This standard aims to perform communication between vehicles and other things by LTE (Long Term Evolution) and 5G (5th generation mobile communication system).
  • LTE Long Term Evolution
  • 5G 5th generation mobile communication system
  • the line speed of the 5G line can be 100 to 1000 times faster than that of the LTE line.
  • Japanese Patent Application Laid-Open No. 2004-242242 discloses a system for transmitting sensor data from a plurality of sensors to a data processing device via a communication network, selecting a desired communication network according to the situation and transmitting the sensor data. It is disclosed. Since a sensor network uses a wide variety of sensors, the sensor data also has a wide variety, and there are those with a large amount of information, those with a small amount of information, those requiring real-time transmission, and those not requiring it. These change depending on the situation. In order to deal with this, in this system, a communication network is selected based on at least one of a sensor ID (ID that identifies an individual sensor) corresponding to sensor data to be transmitted, a sensor type, and an information amount. , Send sensor data.
  • ID that identifies an individual sensor
  • An on-vehicle device is an on-vehicle device mounted on a vehicle, and includes a collecting unit that collects sensor data detected by a sensor mounted on the vehicle and a sensor data collected by the collecting unit.
  • a transmission unit that transmits to an external device, a buffer unit that stores the sensor data collected by the collection unit, a determination unit that determines whether a predetermined condition is satisfied, and a transmission unit that transmits the sensor data to the external device.
  • a control unit that controls the transmission of the sensor data collected by the collection unit to the external device when the determination unit determines that the predetermined condition is satisfied.
  • the transmission unit receives the sensor data stored in the buffer unit in response to the change in the determination by the determination unit when the predetermined condition is not satisfied.
  • the sensor data having a smaller delay time is preferentially transmitted with the priority according to the delay time which is the difference between the acquisition time and the current time, and is transmitted in parallel to the external device.
  • a server computer classifies a receiving unit that receives sensor data transmitted in parallel from the vehicle-mounted device described above, and the sensor data received by the receiving unit into a plurality of types according to a delay time. , And a processing unit that executes data processing according to each of the plurality of classifications.
  • a semiconductor integrated circuit is a semiconductor integrated circuit mounted on an in-vehicle device that transmits sensor data detected by a sensor mounted on a vehicle to an external device, and is detected by the sensor.
  • the control unit includes a buffer unit that stores the sensor data, a determination unit that determines whether or not a predetermined condition is satisfied, and a control unit that controls the transmission of the sensor data by the in-vehicle device to an external device.
  • the in-vehicle device In response to the determination that the predetermined condition is satisfied by the in-vehicle device, to stop the transmission of the sensor data collected by the collection unit to the external device, after the determination unit determines that the predetermined condition is satisfied, the in-vehicle device is caused to compare the sensor data stored in the buffer unit with the delay time, which is the difference between the acquisition time of the sensor data and the current time.
  • the sensor data having a smaller delay time is prioritized with higher priority and is transmitted in parallel to the external device.
  • a system is a system including an in-vehicle device mounted in a vehicle and a server computer that communicates with the in-vehicle device, and the in-vehicle device is detected by a sensor equipped in the vehicle.
  • a collection unit that collects the sensor data
  • a transmission unit that transmits the sensor data collected by the collection unit to the server computer
  • a buffer unit that stores the sensor data collected by the collection unit, and whether or not a predetermined condition is satisfied.
  • a control unit that controls the transmission of the sensor data to the server computer by the transmission unit.
  • the control unit receives the determination that the predetermined condition is satisfied by the transmission unit, After stopping the transmission of the sensor data collected by the collection unit to the server computer and the determination unit determines that the predetermined condition is satisfied, in response to a change in the determination made by the determination unit if the predetermined condition is not satisfied.
  • the sensor data stored in the buffer unit is given priority to the sensor data stored in the buffer unit according to the delay time which is the difference between the acquisition time of the sensor data and the current time, and the sensor data having the smaller delay time is given priority.
  • the server computer to transmit in parallel, the server computer receives the sensor data transmitted from the vehicle-mounted device in parallel, the sensor data received by the receiving unit, the sensor data received by the receiving unit is classified into a plurality according to the delay time, And a processing unit that executes data processing according to each of the plurality of classifications.
  • a control method is a collecting step of collecting sensor data detected by a sensor mounted on a vehicle, and a transmitting step of transmitting the sensor data collected by the collecting step to an external device, A buffer step of storing the sensor data collected by the collecting step, a determination step of determining whether a predetermined condition is satisfied, a control step of controlling the transmission of the sensor data to the external device by the transmitting step, The control step, in response to the determination step determining that the predetermined condition is satisfied, stops the transmission of the sensor data collected by the collecting step to the external device by the transmitting step, and the predetermined condition is satisfied.
  • the sensor data stored in the buffer step is compared with the difference between the acquisition time of the sensor data and the current time. And transmitting the sensor data in parallel to the external device with a priority according to a certain delay time and with a higher priority on the sensor data having a smaller delay time.
  • a computer program has a computer mounted on a vehicle, a collecting function of collecting sensor data detected by a sensor mounted on the vehicle, and a sensor data collected by the collecting function.
  • a sending function for sending to the device, a buffer function for storing the sensor data collected by the collecting function, a judging function for judging whether or not a predetermined condition is satisfied, and a sending function for sending the sensor data to an external device. It is a computer program for realizing a control function to control, the control function, by the transmission function, in response to the determination that the predetermined condition is satisfied by the determination function, of the sensor data collected by the collection function.
  • the sensor that is stored by the buffer function in response to the function that stops the transmission to the external device and that the determination function determines that the predetermined condition is not satisfied after the determination function determines that the predetermined condition is satisfied It includes a function of transmitting data in parallel to an external device with a priority according to a delay time which is a difference between the acquisition time of the sensor data and the current time, with priority given to sensor data having a smaller delay time.
  • An in-vehicle device that collects sensor data output from a sensor mounted on a vehicle, a buffer that can store the sensor data collected by the sensor data collecting unit, A transmission device that reads out either the sensor data collected by the sensor data collection unit or the sensor data stored in the buffer and transmits it to an external device, and a state control unit that controls the state of the in-vehicle device related to the sensor data.
  • the state control unit transitions the state of the vehicle-mounted device between a finite number of states according to the state of the vehicle-mounted device and the throughput of the transmission of the sensor data to the external device by the transmission device.
  • a method for controlling an in-vehicle device includes a step in which a sensor data collecting unit that collects sensor data output from a sensor mounted on a vehicle collects sensor data, and a buffer uses a sensor data collecting unit. Onboard the vehicle, including the step of storing the collected sensor data, and the step of reading either the sensor data collected by the sensor data collection unit or the sensor data stored in the buffer and transmitting it to an external device.
  • the state control unit that controls the state of the in-vehicle device related to the sensor data further includes a state of the in-vehicle device and a throughput of transmission of the sensor data to the external device by the transmitting device.
  • the step of changing the state of the vehicle-mounted device between a finite number of states is included.
  • a computer program can cause a computer to store a sensor data collection unit that collects sensor data output from a sensor mounted on a vehicle, and the sensor data collected by the sensor data collection unit.
  • a buffer a transmission device that reads out either the sensor data collected by the sensor data collection unit, or the sensor data stored in the buffer and transmits it to an external device, and the state of the in-vehicle device related to the sensor data, the in-vehicle device And the throughput of the transmission of the sensor data to the external device by the transmission device, the function is performed as a state control unit that makes a transition between a finite number of states.
  • FIG. 1 is a schematic diagram showing the configuration of a driving support system according to the first embodiment of this disclosure.
  • FIG. 2 is a block diagram showing the hardware configuration of the vehicle-mounted device.
  • FIG. 3 is a block diagram showing the hardware configuration of the server.
  • FIG. 4 is a block diagram showing a functional configuration of the vehicle-mounted device.
  • FIG. 5 is a block diagram showing the structure of the buffer.
  • FIG. 6 is a block diagram showing the functional configuration of the server.
  • FIG. 7 is a flowchart showing the operation of the vehicle-mounted device.
  • FIG. 8 is a flowchart showing the operation of the server.
  • FIG. 9 is a block diagram showing a functional configuration of the vehicle-mounted device according to the first modified example of the first embodiment of the present disclosure.
  • FIG. 9 is a block diagram showing a functional configuration of the vehicle-mounted device according to the first modified example of the first embodiment of the present disclosure.
  • FIG. 10 is a schematic diagram showing parameters for calculating the buffer capacity.
  • FIG. 11 is a block diagram showing a functional configuration of the server according to the first modified example of the first embodiment.
  • FIG. 12 is a flowchart showing the operation of the vehicle-mounted device according to the second modified example of the first embodiment.
  • FIG. 13 is a block diagram showing the structure of a buffer different from that in FIG.
  • FIG. 14 is a state transition diagram showing changes in the state of the vehicle-mounted device according to the second embodiment of the present disclosure.
  • FIG. 15 is a block diagram showing the functional configuration of the vehicle-mounted device according to the second embodiment of the present disclosure.
  • FIG. 16 is a schematic diagram of a ring buffer used in the vehicle-mounted device according to the second embodiment.
  • FIG. 17 is a flowchart showing a control structure of a program that causes a computer to function as a state control unit of the vehicle-mounted device according to the second embodiment.
  • FIG. 18 is a flowchart showing the control structure of the program showing the control structure of the program for causing the computer to function as the sensor data collection unit of the vehicle-mounted device according to the second embodiment.
  • FIG. 19 is a flowchart showing a control structure of a program that causes a computer to function as a data processing unit of the vehicle-mounted device according to the second embodiment.
  • FIG. 20 is a state transition diagram showing changes in the state of the vehicle-mounted device according to the third embodiment of the present disclosure.
  • FIG. 21 is a block diagram showing the hardware configuration of a computer that realizes the vehicle-mounted device according to the second embodiment and the modification thereof of the present disclosure.
  • 5G it is considered to use a high frequency band having a higher frequency than the frequency band conventionally used in mobile communication.
  • studies targeting up to 100 GHz are being advanced.
  • Radio waves in the high frequency band have high straightness in space propagation, and the signal strength is greatly attenuated by space propagation. Therefore, in 5G, it is necessary to design the size of the cell smaller than before, and it is easy for the buildings, trees, and moving bodies (vehicles, people, etc.) to block communication radio waves.
  • Shadowing when sensor data is transmitted from a vehicle-mounted device mounted on a vehicle to a server or the like, a state in which communication radio waves are blocked by a shield and communication with a base station is impossible (hereinafter referred to as shadowing) frequently occurs.
  • a large vehicle dump truck, trailer, etc.
  • shadowing occurs while the in-vehicle device runs in parallel, and A situation may occur in which the message cannot be sent.
  • An object is to provide a computer, a vehicle-mounted device, a control method, a semiconductor integrated circuit, and a computer program.
  • An on-vehicle device is an on-vehicle device mounted on a vehicle, and includes a collecting unit that collects sensor data detected by a sensor mounted on the vehicle, and a collecting unit that collects the sensor data.
  • a transmitting unit that transmits the sensor data to the external device via, for example, a communication line, a buffer unit that stores the sensor data collected by the collecting unit, and a determining unit that determines whether or not a predetermined condition is satisfied
  • the control unit includes a control unit that controls the transmission of the sensor data to the external device by the transmission unit, and the control unit collects the data by the collection unit in the transmission unit after the determination unit determines that the predetermined condition is satisfied.
  • the transmission of the sensor data to the external device is stopped, and then the determination unit changes the determination that the predetermined condition is not satisfied.
  • the sensor data stored in is sent in parallel to the external device with priority according to the delay time that is the difference between the acquisition time of the sensor data and the current time Let As a result, unnecessary data transmission processing can be suppressed and effective data that can be used by an external device can be transmitted.
  • the predetermined condition is that occurrence of a phenomenon that communication with an external device is impossible, or that the vehicle is located within a predetermined range on the road map specified by the area information received from the external device, and communication with the external device. If the predetermined condition is the occurrence of the phenomenon, the determination unit determines that the predetermined condition is satisfied if the phenomenon occurs, and if the phenomenon does not occur, the predetermined condition is determined to be satisfied. If it is determined that the condition is not satisfied, and the predetermined condition is that the vehicle is located within the predetermined range and communication with the external device cannot occur, the determination unit determines that the vehicle is located within the predetermined range and the phenomenon occurs.
  • the predetermined condition is satisfied, and if the vehicle is located outside the predetermined range or a phenomenon has not occurred, it may be determined that the predetermined condition is not satisfied.
  • the external device Can send valid data that can be used by.
  • the delay time is classified into one of a plurality of classifications according to the magnitude of the delay time, and the transmission unit is smaller than the sensor data stored in the buffer unit when transmitting in parallel.
  • the sensor data corresponding to the classification including the delay time may be prioritized and transmitted to the external device. Thereby, information with higher real-time property can be transmitted with higher priority.
  • the buffer unit may include a plurality of buffers, and the plurality of buffers may correspond to the plurality of classifications in a one-to-one manner, and the capacity of the buffer corresponding to the classification including a smaller delay time is smaller. It may be. That is, the buffer unit may include a plurality of buffers for respectively storing sensor data having delay times classified into a plurality of classifications, and the capacity of the plurality of buffers corresponds to a classification including a smaller delay time. The capacity of the buffer may be set to be smaller. As a result, an appropriate buffer capacity can be set according to the real-time property.
  • the in-vehicle device receives from the external device a plurality of permissible delay times, which is the upper limit of the difference between the acquisition time of the sensor data to be processed by the plurality of processes performed by the external device and the time at which the process is executed.
  • the buffer unit may further include a receiving unit, and the buffer unit includes a plurality of buffers, the plurality of buffers have a one-to-one correspondence with a plurality of allowable delay times, and the capacity of the buffer depends on the magnitude of the allowable delay time. It may be set. That is, the buffer unit may include a plurality of buffers each of which has a capacity set corresponding to a plurality of allowable delay times and which stores sensor data to be processed by each of a plurality of processes.
  • the external device to which the in-vehicle device transmits the sensor data may differ depending on the traveling position of the in-vehicle device. Also, the allowable delay time required by the service may be different. It can respond appropriately to these changes.
  • the receiving unit stores the transmission delay time, which is the time from the transmission of the sensor data corresponding to each allowable delay time from the in-vehicle device to the reception by the external device, and the sensor data corresponding to each allowable delay time.
  • the processing delay time which is the time taken from the start to the completion of the processing, may be further received from the external device, and the in-vehicle device determines the line speed of the communication line when the transmitting unit transmits in parallel.
  • the predicting unit for predicting and the capacities of the plurality of buffers are set to the line speed, the allowable delay time, the transmission delay time, the processing delay time predicted by the predicting unit, and the allowable delay time when the transmitting unit transmits in parallel.
  • It may further include a changing unit that changes the sensor data corresponding to the above-mentioned item from a plurality of buffers to a value determined according to a throughput which is a processing speed from transmission to transmission. This makes it possible to set an appropriate buffer capacity without waste.
  • the buffer unit starts storing the sensor data collected by the collection unit in response to the determination unit determining that the predetermined condition is satisfied, and after the determination unit determines that the predetermined condition is satisfied.
  • the storage of the sensor data collected by the collecting unit may be stopped in response to a change in the judgment made by the judging unit if the predetermined condition is not satisfied. Thereby, useless buffer processing can be avoided.
  • a server computer receives a sensor unit that receives sensor data transmitted in parallel from the on-vehicle device, and a sensor data item received by the receiver unit according to a delay time. And a processing unit that performs data processing according to each of the plurality of classifications. This allows the server to receive sensor data suitable for data processing.
  • a semiconductor integrated circuit is a semiconductor integrated circuit mounted on an in-vehicle device that transmits sensor data detected by a sensor mounted on a vehicle to an external device.
  • the control unit includes a buffer unit that stores the detected sensor data, a determination unit that determines whether or not a predetermined condition is satisfied, and a control unit that controls the transmission of the sensor data to the external device by the vehicle-mounted device.
  • the in-vehicle device stops the transmission of the sensor data detected by the sensor to the external device, and the determination unit determines that the predetermined condition is satisfied.
  • the in-vehicle device sets the sensor data stored in the buffer unit to the delay time that is the difference between the sensor data acquisition time and the current time.
  • the sensor data having a smaller delay time is preferentially transmitted in parallel with the priority according to, and transmitted in parallel to the external device. As a result, unnecessary data transmission processing can be suppressed and effective data that can be used by an external device can be transmitted.
  • a system is a system that includes an on-vehicle device mounted on a vehicle and a server computer that communicates with the on-vehicle device, and the on-vehicle device uses a sensor mounted on the vehicle.
  • a collection unit that collects the detected sensor data
  • a transmission unit that transmits the sensor data collected by the collection unit to the server computer
  • a buffer unit that stores the sensor data collected by the collection unit, and a predetermined condition is satisfied.
  • a control unit that controls the transmission of the sensor data to the server computer by the transmission unit. The control unit receives the determination that the predetermined condition is satisfied by the determination unit.
  • the transmission unit stops transmitting the sensor data collected by the collection unit to the server computer, and the determination unit determines that the predetermined condition is not satisfied after the determination unit determines that the predetermined condition is satisfied.
  • the transmission unit uses the sensor data stored in the buffer unit with the priority corresponding to the delay time, which is the difference between the acquisition time of the sensor data and the current time, and outputs the sensor data with a smaller delay time.
  • Priority is given to the server computer to transmit in parallel, and the server computer divides the sensor data received by the reception unit and the reception unit that receives the sensor data transmitted in parallel from the vehicle-mounted device into a plurality according to the delay time.
  • a processing unit that performs data processing according to each of the plurality of classifications. As a result, unnecessary data transmission processing can be suppressed, and effective data that can be used for data processing by the server computer can be transmitted.
  • a control method is a collection step of collecting sensor data detected by a sensor mounted on a vehicle, and a transmission of transmitting the sensor data collected by the collection step to an external device.
  • the transmitting step in response to the determination step determining that the predetermined condition is satisfied, the transmitting step stops the transmission of the sensor data collected by the collecting step to the external device, and the predetermined condition.
  • the determination in the determination step is changed if the predetermined condition is not satisfied, the sensor data stored in the buffer step is compared with the acquisition time and the current time of the sensor data. And transmitting the data in parallel to the external device with priority according to the delay time, which is the difference between the two. As a result, unnecessary data transmission processing can be suppressed and effective data that can be used by an external device can be transmitted.
  • a computer program according to a sixth aspect of the present disclosure, a computer mounted on a vehicle, a collecting function of collecting sensor data detected by a sensor mounted on the vehicle, and a sensor collected by the collecting function.
  • a sending function for sending data to an external device, a buffer function for storing the sensor data collected by the collecting function, a judging function for judging whether or not a predetermined condition is satisfied, and a sending function for sending the sensor data to the external device.
  • a computer program for realizing a control function for controlling the transmission of the control function, wherein the control function is collected by the collecting function by the transmitting function in response to the judgment function determining that the predetermined condition is satisfied.
  • Sensor data that has a delay time that is the difference between the acquisition time of the sensor data and the current time, and the sensor data with a smaller delay time is given priority and sent to the external device in parallel. including.
  • the vehicle-mounted device can store the sensor data collected by the sensor data collection unit that collects the sensor data output by the sensor equipped in the vehicle.
  • a state of controlling the state of the buffer and the in-vehicle device related to the sensor data which reads out either the sensor data collected by the sensor data collection unit or the sensor data stored in the buffer and transmits it to an external device.
  • the state control unit includes a control unit, and changes the state of the vehicle-mounted device between a finite number of states according to the state of the vehicle-mounted device and the throughput of the transmission of the sensor data to the external device by the transmission device.
  • the state of the in-vehicle device changes according to the change in the state and the throughput.
  • the finite number of states is the first state in which the sensor data collected by the sensor data collection unit is transmitted to the external device by the transmission device, and the second state in which the sensor data collected by the sensor data collection unit is stored in the buffer. And the third state in which the sensor data stored in the buffer is read and transmitted to the external device via the transmission device.
  • the sensor data is sent to the external device, and in the second state, it is stored in the buffer.
  • the sensor data stored in the buffer is transmitted to the external device.
  • the state control unit changes from the first state to the first state in response to the throughput changing from a value larger than the threshold value to a value less than the threshold value when the vehicle-mounted device is in the first state.
  • a first state transition unit that transitions the state of the vehicle-mounted device to the state 2 and the vehicle-mounted device in response to the throughput changing to a value larger than the threshold value when the vehicle-mounted device is in the second state.
  • a fourth state transition unit that transitions the state of the vehicle-mounted device from the third state to the second state may be included.
  • the in-vehicle device transits to the second state and buffers the sensor data in the buffer.
  • the vehicle-mounted device transits to the third state and transmits the buffered sensor data to the external device. All sensor data can be transmitted to an external device even if the throughput changes.
  • the finite number of states may further include a fourth state in which the sensor data stored in the buffer is read, converted into subdata having a smaller data size, and transmitted to the external device via the transmission device.
  • the state control unit further changes the state of the vehicle-mounted device from the second state to the fourth state in response to the time when the vehicle-mounted device is in the second state longer than the threshold time.
  • the state transition part of may be included.
  • the sensor data buffering time becomes longer than the threshold time
  • the sensor data stored in the buffer is sequentially read, the data size is converted to a smaller size, and the data is sent to the outside. Even when the low throughput continues for a long time, only a significant part of the sensor data can be transmitted to the external device.
  • the finite number of states may further include a fourth state in which the sensor data collected by the sensor data collection unit is limited to smaller sub-data, and the state control unit further includes the second on-vehicle device.
  • a fifth state transition unit that changes the state of the vehicle-mounted device from the second state to the fourth state in response to the time in the state of being longer than the threshold time may be included.
  • the sensor data collected from the sensor by the sensor collecting unit is limited to smaller sub data and transmitted to the outside. Even when the low throughput continues for a long time, only a significant part of the sensor data can be transmitted to the external device.
  • the state control unit further changes the state of the vehicle-mounted device to the third state in response to the throughput becoming larger than the threshold value when the vehicle-mounted device is in the fourth state.
  • the state transition part of may be included.
  • the throughput is recovered while converting the data size of the sensor data to a smaller size and sending it to the outside, it will return to the state of sending the sensor data as it is to the external device.
  • the throughput is high enough, the accumulated data can be used externally without being wasted.
  • the state control unit further transitions the state of the vehicle-mounted device to the first state in response to the throughput becoming larger than the threshold value when the vehicle-mounted device is in the fourth state.
  • the state transition part of may be included.
  • the throughput recovers after sending the sensor data with a small data size, the acquired sensor data is sent as it is, not the accumulated sensor data.
  • the external device communication can be restored and real-time sensor data can be acquired, and a service using the latest information can be provided.
  • the vehicle-mounted device clears the sensor data stored in the buffer in response to the state of the vehicle-mounted device transiting from the fourth state to the first state by the seventh state transition unit. You may further include a part.
  • the data When sending the collected sensor data as it is, the data remains in the buffer. It is necessary to clear the buffer before using it again. By clearing the buffer, the buffer can be used next time when the throughput drops.
  • the ratio of the data size after conversion in the fourth state to the data size before conversion may be a monotonically increasing function with respect to the throughput.
  • a method of controlling an in-vehicle device wherein a sensor data collecting unit that collects sensor data output from a sensor mounted on a vehicle collects the sensor data, and a sensor data collecting unit.
  • the step of storing the sensor data collected by the buffer in the buffer, the step of reading either the sensor data collected by the sensor data collection unit or the sensor data stored in the buffer and transmitting to an external device, and the sensor data A state control unit that controls the state of the related in-vehicle device, transitions the state of the in-vehicle device between a finite number of states according to the state of the in-vehicle device and the throughput of transmission of sensor data to an external device; including.
  • the state of the in-vehicle device changes according to the change in the state and the throughput.
  • a computer program causes a computer to collect a sensor data collection unit that collects sensor data output from a sensor mounted on a vehicle and the sensor data collected by the sensor data collection unit.
  • the buffer that can be stored, the sensor data collected by the sensor data collector, or the transmitter that reads out the sensor data stored in the buffer and sends it to an external device, and the status of the in-vehicle device related to the sensor data are displayed.
  • the state of the in-vehicle device changes according to the change in the state and the throughput.
  • a driving support system 100 includes a server 102, an in-vehicle device 120 that is installed in a vehicle 106, and communicates with the server 102 via a base station 104 and a network 108.
  • the server 102 provides driving support information to the vehicle-mounted device 120 to support the driver of the vehicle 106.
  • the base station 104 provides a mobile communication service using a 5G line or the like. The communication between the server 102 and the base station 104 is performed via the network 108 and is wired or wirelessly communicated.
  • the in-vehicle device 120 has a communication function by a 5G line.
  • the communication function of the in-vehicle device 120 may be something other than the 5G line.
  • the detection target 110 is an object detected by an in-vehicle sensor of the vehicle 106. Although a person is shown in FIG. 1, the present invention is not limited to this, and traffic signals, buildings, etc. are also objects.
  • the present invention is not limited to this. Usually, a plurality of base stations are provided.
  • vehicles although one vehicle is shown as a representative in FIG. 1, the invention is not limited to this, and the server 102 communicates with in-vehicle devices of more vehicles, collects and analyzes information, and provides driving assistance. Provide information.
  • the in-vehicle device 120 includes an interface unit (hereinafter referred to as an I/F unit) 124 connected to the sensor device 122, a communication unit 126 that performs communication, a memory 128 that stores data, a control unit 130 that controls them, and each unit.
  • a bus 132 is included for exchanging data between the two.
  • the in-vehicle device 120 includes components necessary for functioning as an in-vehicle device, such as a timer and a power supply device, in addition to the components shown in FIG.
  • the sensor device 122 is a sensor mounted on the vehicle 106. Various sensors are mounted on the vehicle, and the sensor device 122 among them is used for generating driving support information.
  • the sensor device 122 is, for example, an image sensor (CCD (Charge-Coupled Device) camera, a CMOS (Complementary Metal-Oxide-Semiconductor) camera, etc.), a laser sensor (LiDAR (Light Detection and Ranging), etc.), a millimeter wave, etc. is there.
  • the sensor device 122 detects an object and outputs a predetermined detection signal (analog signal or digital data).
  • a detection signal from the sensor device 122 is input to the I/F unit 124.
  • the I/F unit 124 includes an A/D conversion unit, and when an analog signal is input, samples the signal at a predetermined frequency to generate and output digital data (sensor data). The generated digital data is transmitted to and stored in the memory 128. If the output signal from the sensor device 122 is digital data, the I/F unit 124 stores the input digital data in the memory 128.
  • the memory 128 is, for example, a rewritable nonvolatile semiconductor memory or a hard disk drive (hereinafter referred to as HDD).
  • the sensor data stored in the memory 128 represents information (for example, a time stamp; hereinafter referred to as sensor data acquisition time) that specifies the time when the sensor data is acquired, and the position of the vehicle 106 corresponding to the sensor data acquisition time.
  • Information (hereinafter, referred to as vehicle position) is attached.
  • vehicle position is attached.
  • the sensor device 122 is an image sensor
  • the sensor data acquisition time and the vehicle position are attached to the sensor data in frame units.
  • the sensor data acquisition time is acquired from a timer, and the vehicle position is acquired from GPS (Global Positioning System).
  • the communication unit 126 has a mobile communication function on a 5G line and communicates with the server 102. Communication between the vehicle-mounted device 120 and the server 102 is performed via the base station 104 and the network 108.
  • the communication unit 126 is composed of an IC for modulation and multiplexing adopted in the 5G line, an antenna for radiating and receiving a radio wave of a predetermined frequency, an RF (Radio Frequency) circuit, and the like.
  • the control unit 130 is configured to include a CPU (Central Processing Unit), and realizes the function of the in-vehicle device 120 described later by controlling each unit.
  • CPU Central Processing Unit
  • the server 102 includes a control unit 140, a memory 142, a communication unit 144, and a bus 146. Data transmission between the units is performed via the bus 146.
  • the control unit 140 includes, for example, a CPU, controls each unit, and realizes various functions of the server 102.
  • the communication unit 144 receives the sensor data uploaded from the vehicle 106 via the base station 104 and the network 108.
  • the memory 142 includes a rewritable nonvolatile semiconductor memory and a mass storage device such as an HDD. The data received by the communication unit 144 is transmitted to the memory 142 and stored as a database.
  • the in-vehicle device 120 collects the sensor data detected by the sensor device 122, and the sensor data processing unit 190 that processes the sensor data collected by the sensor data collection unit 200 and generates a packet to upload to the server 102.
  • a packet transmission unit 216 that transmits the packet generated by the sensor data processing unit 190 to the server 102, and a packet reception unit 218 that receives the packet from the server 102.
  • the sensor data processing unit 190 includes a buffer input control unit 202, a buffer unit 204, a buffer output control unit 212, and a shadowing detection unit 214.
  • the buffer unit 204 includes a first buffer 206, a second buffer 208, and a third buffer 210.
  • the sensor data collection unit 200 collects sensor data detected by the sensor device 122.
  • the buffer input control unit 202 outputs the sensor data input from the sensor data collection unit 200 to the packet transmission unit 216 if there is no problem in the communication state with the base station 104, and to the buffer unit 204 if there is a problem. ..
  • the sensor data output from the buffer input control unit 202 includes the sensor data acquisition time and the vehicle position of the vehicle 106 corresponding to the sensor data acquisition time.
  • the obstacle to the communication state with the base station 104 is the occurrence of shadowing. Information on the occurrence of shadowing is transmitted from the shadowing detection unit 214 as described later.
  • the first buffer 206, the second buffer 208, and the third buffer 210 have a predetermined buffer capacity and sequentially store the input data.
  • the first buffer 206, the second buffer 208, and the third buffer 210 are secured on the memory 128, for example.
  • the respective buffer capacities are ensured such that the first buffer 206, the second buffer 208, and the third buffer 210 become larger in this order.
  • the buffer input control unit 202 When outputting the sensor data to the buffer unit 204, the buffer input control unit 202 outputs the sensor data to the first buffer 206.
  • the first buffer 206, the second buffer 208, and the third buffer 210 store the input data, and when new data is input, shift the data stored so far (shift to the right in FIG. 5).
  • the first buffer 206, the second buffer 208, and the third buffer 210 function as follows when the stored data overflows beyond the buffer capacity. That is, referring to FIG. 5, when the first buffer 206 overflows, the oldest data (indicated by diagonal lines in FIG. 5) among the data stored in the first buffer 206 is stored in the second buffer 208. Is output. When the second buffer 208 overflows, of the data stored in the second buffer 208, the oldest data (indicated by diagonal lines in FIG. 5) is output to the third buffer 210. When the third buffer 210 overflows, of the data stored in the third buffer 210, the oldest data (indicated by diagonal lines in FIG. 5) is discarded.
  • the first buffer 206 has the longest delay time (difference between the time when the sensor data is acquired by the in-vehicle device 120 and the specific time (current time or time received by the server 102)). Short data (eg delay time ⁇ several hundred milliseconds) is stored.
  • the second buffer 208 stores data having a longer delay time than the data stored in the first buffer 206 (for example, several hundred milliseconds ⁇ delay time ⁇ several seconds). Data having a longer delay time than the data stored in the second buffer 208 (for example, several seconds ⁇ delay time ⁇ several minutes) is stored in the third buffer 210.
  • the sensor data stored in the first buffer 206, the second buffer 208, and the third buffer 210 are also referred to as real-time data, near real-time data, and non-real-time data, respectively.
  • the time at which each preset buffer stores data (sensor data, sensor data acquisition time, and vehicle position), and the corresponding buffer capacity, are related to the service provided by the server 102 (providing driving support information, etc.). It may be set according to the delay time allowed for the sensor data used (for example, the difference between the sensor data acquisition time and the sensor data processing completion time).
  • the upper limit of the delay time allowed for each service is referred to as "allowable delay time”.
  • each buffer described above is an example, and data may be stored in a time range different from the above. As will be described later, the storage time of each buffer (corresponding buffer capacity) may be set according to the service executed by the server 102.
  • the buffer output control unit 212 reads the sensor data in parallel from the first buffer 206, the second buffer 208, and the third buffer 210, and outputs the sensor data to the packet transmission unit 216, if there is no problem in the communication with the base station. To do. For example, the buffer output control unit 212 reads from the oldest data (hatched portion in FIG. 5) in each of the first buffer 206, the second buffer 208, and the third buffer 210. At this time, the buffer output control unit 212 preferentially reads the sensor data having a short delay time. That is, the priority of data reading becomes lower in the order of the first buffer 206, the second buffer 208, and the third buffer 210.
  • the buffer output control unit 212 adds information that can specify the delay time of the sensor data read from the first buffer 206, the second buffer 208, and the third buffer 210 to the sensor data, and outputs the sensor data to the packet transmission unit 216.
  • the buffer output control unit 212 adds the classification information indicating the real-time data, the near real-time data, and the non-real-time data to the sensor data, and outputs the sensor data to the packet transmission unit 216.
  • predetermined information hereinafter, also referred to as output completion information. Is output to the shadowing detection unit 214.
  • the packet transmitting unit 216 packetizes the input data according to the communication protocol (addition of header data, division, etc.) and transmits. If the data input to the packet transmission unit 216 is the buffered data, the classification information is added (sensor data, sensor data acquisition time, vehicle position, and classification information). No information is added (sensor data, sensor data acquisition time, and vehicle position). Transmitting the buffer data read in parallel from the first buffer 206, the second buffer 208, and the third buffer 210 according to the priority is also referred to as “parallel upload” below. In this case, "parallel upload (transmission in parallel)” means 1) reading out a plurality of types of data one by one, and assembling them into one packet for transmission, and 2) transmitting a plurality of types of data.
  • the packet receiving unit 218 receives the data transmitted from the base station 104.
  • the packet receiving unit 218 can determine whether the packet data transmitted from the packet transmitting unit 216 has been received at the transmission destination by receiving the reception confirmation information transmitted from the transmission destination. For example, in the case of the TCP/IP protocol, it is possible to receive the ACK and the confirmation response number (representing the head of the data to be transmitted next (representing how far the data can be received)). If the packet reception unit 218 cannot receive the reception confirmation information within the predetermined time, it is determined that the transmission has failed, and the packet transmission unit 216 retransmits the corresponding packet data.
  • the shadowing detection unit 214 determines whether shadowing has occurred, based on the frequency of transmission failures input from the packet transmission unit 216 or the line speed of the communication line, and determines that shadowing has occurred. If determined, a predetermined instruction (hereinafter referred to as a buffer start instruction) is output to the buffer input control unit 202. When the buffer start instruction is input, the buffer input control unit 202 changes the output destination of the sensor data input from the sensor data collection unit 200 from the packet transmission unit 216 to the buffer unit 204. As a result, the buffering (storage) of the sensor data is executed by the first buffer 206, the second buffer 208, and the third buffer 210 as described above.
  • a predetermined instruction hereinafter referred to as a buffer start instruction
  • the shadowing detection unit 214 outputs a predetermined instruction (hereinafter, referred to as a transmission start instruction) to the buffer input control unit 202 and the buffer output control unit 212 when determining that the shadowing that has occurred has been resolved.
  • a transmission start instruction a predetermined instruction
  • the buffer input control unit 202 stops the output of the sensor data input from the sensor data collection unit 200.
  • the buffer output control unit 212 reads data in parallel from the first buffer 206, the second buffer 208, and the third buffer 210 as described above, and responds to the read data.
  • the classification information is added and output to the packet transmission unit 216.
  • the buffer output control unit 212 When the output of all the buffer data is completed, the buffer output control unit 212 outputs the output completion information to the shadowing detection unit 214, and the shadowing detection unit 214, to which the output completion information is input, outputs a predetermined instruction (hereinafter referred to as a buffer).
  • a termination instruction is output to the buffer input control unit 202.
  • the buffer input control unit 202 When the buffer end instruction is input, the buffer input control unit 202 returns the output destination of the sensor data input from the sensor data collection unit 200 from the buffer unit 204 to the packet transmission unit 216.
  • the in-vehicle device 120 can buffer the sensor data while the shadowing is occurring, and can transmit the buffered sensor data in parallel if the shadowing is resolved.
  • the buffered sensor data is preferentially transmitted from the one having the shortest delay time, so that the server 102 can effectively use the received sensor data, as described later.
  • the function of the sensor data collection unit 200 is realized by the I/F unit 124 of FIG.
  • the functions of the packet transmission unit 216 and the packet reception unit 218 are realized by the communication unit 126.
  • the functions of the buffer input control unit 202, the buffer unit 204, the buffer output control unit 212, and the shadowing detection unit 214 are realized by the control unit 130 and the memory 128.
  • Each function of the in-vehicle device 120 may be realized by using dedicated hardware (circuit board, semiconductor integrated circuit (ASIC, etc.), etc.).
  • the functions of the buffer input control unit 202, the buffer unit 204, the buffer output control unit 212, and the shadowing detection unit 214 surrounded by the one-dot chain line in FIG. 4 are realized by one or a plurality of semiconductor integrated circuits, and the control unit 130.
  • the on-vehicle device 120 may be mounted as a configuration different from the memory 128.
  • the server 102 classifies the packet receiving unit 240 that receives the packet data, the output data of the packet receiving unit 240 according to a predetermined condition, the filter unit 244 that inputs the data to the database 246, and the data stored in the database 246. And a packet transmitting unit 242 that transmits the processing result of the processing unit 254 as driving support information.
  • the database 246 includes a real-time data area 248, a near real-time data area 250, and a non-real-time data area 252.
  • the database 246 is realized by the memory 142 (see FIG. 3).
  • the real-time data area 248, the near real-time data area 250, and the non-real-time data area 252 are areas for storing sensor data according to the delay time.
  • the real-time data area 248 is an area for storing real-time sensor data.
  • the near real time data area 250 is an area for storing near real time sensor data.
  • the non-real time data area 252 is an area for storing non-real time sensor data.
  • the packet receiving unit 240 receives sensor data from an in-vehicle device such as the in-vehicle device 120 of the vehicle 106.
  • the packet receiving unit 240 receives sensor data not only from the in-vehicle device but also from fixed infrastructure sensors such as street monitoring cameras.
  • the infrastructure sensor includes, for example, an image sensor (camera or the like), a laser sensor (LiDAR or the like), a millimeter wave radar, or the like.
  • the packet receiving unit 240 Upon receiving the packet data including the sensor data transmitted from the vehicle-mounted device 120, the packet receiving unit 240 extracts the sensor data and the additional information (hereinafter, also referred to as additional information), if any, and extracts the additional information. It is output to the filter unit 244.
  • the function of the packet reception unit 240 is realized by the communication unit 144 of FIG.
  • the additional information is the above-mentioned sensor data acquisition time, vehicle position, and classification information (information indicating classification of sensor data delay time).
  • the filter unit 244 stores the input sensor data, the sensor data acquisition time, and the vehicle position in any of the real-time data area 248, the near real-time data area 250, and the non-real-time data area 252 according to the classification information.
  • the classification information is added only to the sensor data (buffered data) transmitted when the generated shadowing is eliminated in the vehicle-mounted device 120, and is not added to the sensor data transmitted at normal times. .. Also, no classification information is added to the sensor data received from the infrastructure sensor.
  • the filter unit 244 outputs the sensor data to which no classification information is added to the real-time data area 248 as highly real-time data.
  • the real-time property of the data stored in the real-time data area 248, the near-real-time data area 250, and the non-real-time data area 252 changes with the passage of time, it is possible to appropriately move or delete data between each other.
  • the real-time property of the sensor data stored in each of the real-time data area 248, the near real-time data area 250, and the non-real-time data area 252 is maintained. For example, with reference to the sensor data acquisition time according to the passage of time, of the data stored in the real-time data area 248, the data that does not correspond to the real-time data is moved to the near real-time data area 250.
  • the data that does not correspond to the near real time data is moved to the non-real time data area 252.
  • the data that does not correspond to the non-real time data is deleted.
  • the processing unit 254 reads the sensor data from the real-time data area 248, the near real-time data area 250, and the non-real-time data area 252 at a predetermined timing, and executes processing according to the delay time of the read sensor data.
  • the processing unit 254 performs, for example, moving body detection processing on the sensor data read from the real-time data area 248, and specifies the attributes (type (person, vehicle, etc.), position, size, etc.) of the detected moving body. , Generates driving support information, reflects on a traffic situation map, etc.
  • the processing unit 254 uses the sensor data read from the real-time data area 248 and the near real-time data area 250 for the process of estimating the future behavior of the detection target.
  • the processing unit 254 may include a detailed attribute of the moving body detected from the sensor data in the real-time data area 248 (for example, when a pedestrian is detected, what kind of pedestrian is the pedestrian (for example, a child or an elderly person). , Walking, walking speed, walking direction, stopping etc.)).
  • the sensor data read from the near real-time data area 250 can be used as a past sample in the behavior estimation process.
  • the processing unit 254 uses the sensor data read from the non-real-time data area 252 as, for example, target data for statistical processing such as statistical analysis, learning data for constructing an estimation model, and the like.
  • the processing result of the processing unit 254 is stored in the analysis result area 256 of the database 246, read by the packet transmitting unit 242 as appropriate, and transmitted to the vehicle-mounted device as driving support information.
  • the server 102 classifies and stores the sensor data received from the in-vehicle device such as the in-vehicle device 120 and the infrastructure sensor according to the real-time property, and uses the stored sensor data according to the real-time property. it can.
  • the operation of the driving support system 100 will be described by describing the operation of the in-vehicle device 120 and the server 102 with reference to FIGS. 7 and 8.
  • the processing illustrated in FIG. 7 is realized by the control unit 130 reading a predetermined program from the memory 128 and executing the program.
  • the processing illustrated in FIG. 8 is realized by the control unit 140 reading a predetermined program from the memory 142 and executing the program.
  • control unit 130 acquires sensor data from sensor device 122.
  • step 302 the control unit 130 determines whether shadowing has occurred. Occurrence of shadowing can be determined by the above-described increase in frequency of transmission failure, decrease in line speed, decrease in received signal level, disconnection of communication with the server 102, and the like. This corresponds to the function of the shadowing detection unit 214 in FIG. If it is determined that shadowing has occurred, control transfers to step 304. Otherwise, control transfers to step 306.
  • the control unit 130 starts buffering the sensor data acquired at 300. This corresponds to the functions of the buffer input control unit 202 and the buffer unit 204 in FIG. For example, the sensor data is divided into real-time data, near real-time data, and non-real-time data and buffered according to the delay time. Thereafter, control transfers to step 308.
  • step 302 when it is determined in step 302 that shadowing has not occurred, the sensor data acquired in step 300 is transmitted to the server 102 in step 306.
  • control unit 130 determines whether shadowing has been resolved. If it is determined that the problem has been resolved, the control proceeds to step 312. Otherwise, control transfers to step 310.
  • control unit 130 acquires sensor data and buffers the acquired sensor data as described above. Thereafter, control returns to step 308. This causes sensor data to be buffered and not sent during shadowing.
  • step 312 the control unit 130 stops the buffer process and starts the process of transmitting the buffered data to the server 102.
  • the buffered data divided into real-time data, near real-time data, and non-real-time data are uploaded in parallel. At this time, the one with high real-time property is preferentially transmitted. Thereafter, control transfers to step 314.
  • control unit 130 determines whether or not termination is instructed.
  • the termination instruction is issued by, for example, turning off the power of the in-vehicle device 120.
  • this program ends. Otherwise, control returns to step 300.
  • the in-vehicle device 120 repeats the process of receiving the sensor data and transmitting the sensor data to the server 102 if the shadowing has not occurred.
  • the in-vehicle device 120 buffers the sensor data during the shadowing occurring, and when the shadowing disappears, the buffered sensor data can be uploaded in parallel.
  • the buffered sensor data is preferentially transmitted from the one with the shortest delay time. Therefore, when shadowing occurs, it is possible to suppress wasteful processing in which data retransmission is repeated. Further, if shadowing is eliminated, sensor data having high real-time property is preferentially transmitted, so that the server 102 can effectively use the received data, and the received data is discarded without being used. Can be suppressed.
  • control unit 140 determines whether or not data has been received. If it is determined that it has been received, the control proceeds to step 402. Otherwise, control transfers to step 412.
  • the control unit 140 determines whether the data received at step 400 is sensor data. For example, when the sensor data is packetized and transmitted from the vehicle-mounted device 120, the packet header may be transmitted with the information indicating that the sensor data is contained. The control unit 140 can determine that the sensor data has been received if the received packet header includes the information. If it is determined that it has been received, the control proceeds to step 406. Otherwise, control transfers to step 404.
  • control unit 140 executes a corresponding process according to the received data. Thereafter, control transfers to step 412.
  • control unit 140 determines whether or not the data received at step 400 includes classification information (information indicating the real-time property of sensor data). If it is determined to be included, the control proceeds to step 408. Otherwise, control transfers to step 410.
  • the control unit 140 stores the sensor data received at step 400 in the corresponding area of the memory 142 corresponding to the received classification information. This corresponds to the functions of the filter unit 244 and the database 246 in FIG.
  • the sensor data is stored in the real-time data area 248, the near real-time data area 250, or the non-real-time data area 252 according to the classification information.
  • control unit 140 stores the sensor data (not including the classification information) received at step 400 in the area for storing real-time data in the memory 142 (real-time data area 248 in FIG. 6). Thereafter, control transfers to step 412.
  • control unit 140 determines whether or not to perform analysis processing of the stored sensor data. If it is determined that the analysis process is to be executed, the control proceeds to step 414. Otherwise, control transfers to step 416. For example, the control unit 140 determines to execute the analysis process when new sensor data is received. Further, if the analysis process is set to be executed at a predetermined time interval, the control unit 140 determines whether or not to execute the analysis process based on the time elapsed since the last execution of the analysis process. ..
  • step 414 the control unit 140 analyzes the sensor data stored in the memory 142 (the real-time data area 248, the near real-time data area 250, the non-real-time data area 252 in FIG. 6) according to the real-time property. Execute the process. This corresponds to the function of the processing unit 254 in FIG. The control unit 140 stores the analysis result in the memory 142 (the analysis result area 256 in FIG. 6). Then, the control proceeds to step 416.
  • the control unit 140 determines whether or not a termination instruction has been issued.
  • the termination instruction is made by, for example, an instruction to stop the program being executed. This program ends when it is instructed to end it. If the end instruction has not been received, the control returns to step 400.
  • the server 102 classifies and stores the sensor data received from the in-vehicle device such as the in-vehicle device 120 and the infrastructure sensor according to its real-time property, and stores the stored sensor data in accordance with the real-time property.
  • sensor data buffer data
  • sensor data that is transmitted after the shadowing occurs in the vehicle-mounted device 120 and cannot be transmitted for a predetermined period, and is discarded after the shadowing is resolved is classified according to its real-time property. It can be stored and can be effectively used according to its real-time property.
  • the present invention is not limited to this.
  • the buffer capacity may be changed appropriately.
  • the in-vehicle device changes the buffer capacity according to the parameter transmitted from the server.
  • vehicle 430 includes an in-vehicle device 150 according to the first modification.
  • the functional configuration of the vehicle-mounted device 150 is different from that of the vehicle-mounted device 120 of FIG. 4 in that sensor data processing is performed by adding a buffer capacity determination unit 220 to the sensor data processing unit 190 instead of the sensor data processing unit 190 of FIG. It only includes part 440.
  • the buffer capacity determination unit 220 receives the parameters (line speed) input from the packet reception unit 218 and parameters input from the packet reception unit 218, and the parameters transmitted from the server 102 and received by the packet reception unit 218.
  • the parameters determine the capacity of each buffer.
  • the components denoted by the same reference numerals as the components of the vehicle-mounted device 120 (FIG. 4) have the same functions as the components of the vehicle-mounted device 120, and therefore the repeated description will not be repeated. The differences will be mainly described.
  • the buffer capacity of each of the first buffer 206, the second buffer 208, and the third buffer 210 is set in advance when the in-vehicle device 150 starts operating.
  • the vehicle-mounted device 150 stops the transmission of the sensor data output from the sensor data collection unit 200 and starts the buffer process to the buffer unit 204 (buffer input control unit), as in the case of the vehicle-mounted device 120.
  • the output destination of 202 is changed from the packet transmission unit 216 to the buffer unit 204).
  • the data buffered in the first buffer 206, the second buffer 208, and the third buffer 210 are read in parallel and transmitted from the packet transmission unit 216 (parallel upload).
  • each packet data transmitted from the packet transmission unit 216 includes information indicating the transmission time.
  • the server 102 receives the data (sensor data) buffered during the period when the shadowing is occurring and effectively utilizes the data.
  • the server 102 During parallel upload, the server 102, as described later, the line speed, the time difference from the transmission time of the received data to the acquisition time (hereinafter referred to as transmission delay time), and the received data (sensor data). ) And the time required for the analysis processing (hereinafter referred to as processing delay time) are measured (calculated). The measured line speed is quantized and stored.
  • the calculation of the transmission delay time and the processing delay time is performed for each of the above classification information (information representing the delay time of the sensor data). That is, the server 102 performs parallel upload performance evaluation when the vehicle-mounted device 150 performs parallel upload.
  • the server 102 transmits these parameters to the vehicle-mounted device 150 at an appropriate timing.
  • the parameters are transmitted, for example, as a set of ⁇ line speed, classification information, transmission delay time, processing delay time ⁇ .
  • the server 102 also transmits the allowable delay time of each service. Services that use sensor data differ depending on the real-time property of the sensor data. For example, real-time data can be used to generate driving assistance information, but non-real-time data cannot be used. Sensor data with a delay time exceeding the allowable delay time is not used by the corresponding service.
  • the allowable delay time is set for each classification information. Note that the allowable delay time may be shared between the server and the in-vehicle device, and may be specified in advance as long as the allowable delay time does not change. It may have been done.
  • the allowable delay time may be transmitted separately from the parameter transmission if the allowable delay time changes but the cycle is relatively long. When the permissible delay time changes and the cycle is relatively short, the permissible delay time may be transmitted at the same time as the transmission of the parameter.
  • the parameters and the allowable delay time transmitted from the server 102 are received by the packet reception unit 218 and output to the buffer capacity determination unit 220.
  • the buffer capacity determination unit 220 stores the input parameters. Further, the packet transmission unit 216 appropriately measures the line speed in a state where normal communication is possible, and outputs it to the buffer capacity determination unit 220.
  • the buffer capacity determination unit 220 calculates and stores the average value of the line speed input from the packet transmission unit 216.
  • the buffer capacity determination unit 220 determines the buffer capacity of each of the first buffer 206, the second buffer 208, and the third buffer 210 using the stored average value of the line speed and the parameter as follows.
  • FIG. 10 shows a process completion time (buffer data is received and analyzed by the server 102) from a buffer start time (time when buffer processing is started) ts for sensor data having a specific real-time property (real-time, near real-time, or non-real-time). Shows the time required for each process up to the time (te) at which te is completed.
  • the buffer time T1 means the time required to store all the buffer data B having a specific real-time property.
  • the transmission delay time T3 means the time until all the specific real-time buffered data is transmitted from the vehicle-mounted device 150 and received by the server 102.
  • the processing delay time T4 means a time required for the server 102 to analyze specific real-time sensor data. Of these, the transmission delay time T3 and the processing delay time T4 are measured by the server 102 as described above. On the other hand, the buffer time T1 and the throughput Th are measured by the in-vehicle device 150. These times differ according to real-time nature (real-time, near real-time or non-real-time).
  • the buffer time T1 increases in the order of real time data (buffer data of the first buffer 206), near real time data (buffer data of the second buffer 208), and non-real time data (buffer data of the third buffer 210). The same applies to the throughput Th, the transmission delay time T3, and the processing delay time T4.
  • FIG. 10 shows two types of allowable delay times TA1 and TA2.
  • the allowable delay time TA1 relates to a service that uses near real-time data
  • the allowable delay time TA2 relates to a service that uses real-time data.
  • all the data buffered in the vehicle-mounted device 150 can be effectively used by the server 102.
  • the permissible delay time TA2 the sensor data buffered in the period ⁇ T is not effectively used (not used by the corresponding service). That is, the period of ⁇ T is useless time.
  • the buffer capacity corresponding to the upper limit value of the buffer time T1 can be calculated by the product of the buffer time T1 and the sensor data amount S per unit time ((TA ⁇ T3 ⁇ T4) ⁇ S/(1+S/Th)).
  • the buffer capacity determination unit 220 corresponds to the line speed (quantized) corresponding to the average value calculated from the line speed acquired from the packet transmission unit 216. Data) and specify a set of ⁇ classification information, transmission delay time, processing delay time ⁇ corresponding to the specified line speed (quantized data). Then, the buffer capacity determination unit 220 identifies one piece of classification information (corresponding to real-time property) in the identified set, and the transmission delay time (T3), processing delay time (T4), and allowable delay time (TA) corresponding to the classification information. ) Is substituted into (TA-T3-T4) ⁇ S/(1+S/Th) to calculate the upper limit value of the buffer capacity. The buffer capacity determination unit 220 repeats this for the number of pieces of classification information, and determines the upper limit value of the buffer capacity for each classification information.
  • the buffer capacity determination unit 220 outputs the determined upper limit value of the buffer capacity for each classification information to the buffer input control unit 202.
  • the buffer input control unit 202 preliminarily responds to each classification information by the first buffer 206, the second buffer 208, and the second buffer 208 when shadowing occurs when shadowing does not occur.
  • the buffer capacity of the 3 buffer 210 is secured on the memory 128.
  • the line speed output from the packet transmission unit 216 to the buffer capacity determination unit 220 used for calculating the buffer capacity changes. It can be estimated that the line speed at the time when shadowing disappears and then disappears is almost the same as the line speed just before shadowing occurs. Therefore, the server 102 repeatedly transmits the parameter, and each time the buffer capacity determination unit 220 receives the parameter, the average value of the line speeds calculated and obtained from the packet transmission unit 216 (after the shadowing is eliminated) If the upper limit value of the buffer capacity is determined using the estimated value of the line speed), an appropriate buffer capacity can be secured in case shadowing occurs.
  • the secured buffer capacity is an appropriate buffer capacity according to real-time property (classification information), and when transmitted to the server 102, it is possible to suppress waste of buffering data that is discarded without being used.
  • the function of the buffer capacity determination unit 220 of the vehicle-mounted device 150 can be realized by the control unit 130 (FIG. 2) reading a predetermined program from the memory 128 and executing it.
  • the control unit 130 may execute the program for realizing the function of the buffer capacity determination unit 220 in parallel with the program shown in FIG.
  • the average value of the line speed before the shadowing occurred was used as the line speed when the shadowing once disappeared and then disappeared, but it is not limited to this. Any value may be used as long as it is an estimated value of the line speed when shadowing is eliminated, and a value estimated by another method may be used.
  • the past traveling position and the corresponding line speed may be stored, and the line speed at the time of eliminating shadowing may be estimated from the present traveling position of the vehicle.
  • the hardware configuration of the server of the first modification is the same as that of FIG.
  • the functional configuration of the server 152 according to the first modification will be described with reference to FIG. 11.
  • the configuration of the server 152 differs from the server 102 of FIG. 6 only in that a parameter generation unit 258 is added.
  • the parameter generation unit 258 calculates parameters when the vehicle-mounted device 150 performs parallel upload.
  • the components denoted by the same reference numerals as the components of the server 102 (FIG. 6) have the same functions as the components of the server 102, and therefore duplicated description will not be repeated. The differences will be mainly described.
  • the server 152 receives sensor data from an in-vehicle device such as the in-vehicle device 150 and an infrastructure sensor, and according to the real-time property of the received sensor data, the real-time data area 248, the near real-time data area 250, or It is stored in the non-real time data area 252. After that, the server 102 appropriately reads the sensor data from the real-time data area 248, the near real-time data area 250, and the non-real-time data area 252, analyzes the sensor data, and stores the analysis result in the analysis result area 256 according to the service.
  • an in-vehicle device such as the in-vehicle device 150 and an infrastructure sensor
  • the server 102 appropriately reads the sensor data from the real-time data area 248, the near real-time data area 250, and the non-real-time data area 252, analyzes the sensor data, and stores the analysis result in the analysis result area 256 according to the service.
  • the packet receiving unit 240 outputs the packet data to the parameter generating unit 258 when receiving the packet data including the buffered data by the parallel upload by the vehicle-mounted device 150.
  • the packet receiving unit 240 also outputs the information on the line speed at this time to the parameter generating unit 258.
  • the parameter generation unit 258 quantizes and stores the input line speed.
  • the packet data input to the parameter generation unit 258 includes sensor data, sensor data acquisition time, vehicle position, classification information, and transmission time. Therefore, the parameter generation unit 258 can measure (calculate) the transmission delay time for each classification information.
  • the parameter generation unit 258 measures the transmission delay time each time the packet data is input, and stores the transmission delay time in association with the corresponding classification information.
  • the transmission delay time can be calculated, for example, as an average value of the transmission delay times of the respective packets for each classification information and when the parallel upload ends. By repeating this for the packet data transmitted by the parallel upload, it is possible to generate a set of ⁇ classification information, transmission delay time ⁇ for each line speed (quantized value).
  • the processing unit 254 calculates processing delay time (time required for analysis processing) for each real-time property (for each classification information) in the server 152, associates the processing delay time with the classification information, and sets the parameter. Output to the generation unit 258.
  • the parameter generation unit 258 generates a set of ⁇ line speed, classification information, transmission delay time, processing delay time ⁇ by associating the input processing delay time with the classification information, and via the packet transmission unit 242, It is transmitted to the in-vehicle device 150.
  • each time the vehicle-mounted device 150 receives the parameter uses the estimated value of the line speed at the time when the shadowing that occurred occurs to eliminate the buffer capacity for storing the sensor data when the shadowing occurs. , Can be set appropriately in advance.
  • the function of the parameter generation unit 258 can be realized by the control unit 140 (FIG. 3) reading a predetermined program from the memory 142 and executing it.
  • the control unit 140 may execute the program for realizing the function of the parameter generation unit 258 in parallel with the program shown in FIG.
  • the server issues an instruction for starting the buffer processing of the sensor data in the vehicle-mounted device, and the vehicle-mounted device starts the buffer processing according to the instruction.
  • the server causes the in-vehicle device of the vehicle traveling in such an area to buffer the sensor data when the shadowing occurs.
  • the hardware configuration of the on-vehicle device is the same as that of FIG. 2, and the functions of the on-vehicle device include the functions shown in FIG.
  • the shadowing detection unit 214 also determines whether or not the vehicle is located within the area designated by the server.
  • the hardware configuration of the server is the same as in FIG. 3, and the server function includes the functions shown in FIG. Therefore, the functions different from the above are mainly described with reference to FIGS. 2 to 4 and 6 as appropriate.
  • the vehicle-mounted device executes the process shown in the flowchart of FIG. 12 instead of the process of FIG. 7.
  • the flowchart of FIG. 12 is obtained by adding steps 350 to 354 to the flowchart of FIG. 7.
  • the process of the steps denoted by the same numbers as in FIG. 7 is the same as that in FIG. 7, and therefore the duplicated description will not be repeated. The differences will be mainly described.
  • the server 102 transmits information (hereinafter referred to as area information) for identifying a predetermined range on the road map to the in-vehicle device of each vehicle, and the in-vehicle device 120 stores the received area information in the memory.
  • area information information for identifying a predetermined range on the road map
  • the in-vehicle device 120 stores the received area information in the memory.
  • control unit 130 determines whether vehicle 106 is located within a predetermined range (hereinafter, also referred to as a designated area) specified by the stored area information. If it is determined that the vehicle is located within the designated area, the control proceeds to step 302. Otherwise, control transfers to step 352.
  • the determination as to whether or not the vehicle is located within the designated area can be made using the positional information of the vehicle 106 acquired by GPS.
  • steps 302 to 312 are executed. As described above, if the shadowing occurs, the sensor data is buffered during that time, and when the shadowing is eliminated, the buffering is performed. Data is uploaded in parallel.
  • step 352 the control unit 130 determines whether shadowing has occurred, as in step 302. When it is determined that the shadowing has not occurred, the control shifts to step 306, and the sensor data is transmitted. If it is determined that shadowing has occurred, control transfers to step 354. In step 354, the control unit 130 discards the sensor data without transmitting or buffering it.
  • the in-vehicle device 120 mounted on the vehicle 102 buffers the sensor data while the shadowing is occurring, and if the shadowing is eliminated, The buffer data is transmitted to the server 102. If the vehicle 102 is traveling outside the designated area, the in-vehicle device 120 mounted on the vehicle 102 discards the sensor data and retransmits the sensor data and buffers the sensor data when shadowing occurs. Do not do. Therefore, the server 102 can acquire the sensor data that is important for the provided service, and the vehicle-mounted device 120 can suppress the retransmission of the sensor data that is not so important for the server 102.
  • the presence or absence of shadowing is determined after determining whether the vehicle 106 is located in the designated area, but the present invention is not limited to this.
  • the presence or absence of shadowing may be determined, and when the shadowing is occurring, it may be determined whether the vehicle 106 is located within the designated area.
  • the buffer processing start condition is not limited to being located in the designated area specified by the area information, and may be any other condition.
  • FIG. 14 shows the state transition of the vehicle-mounted device according to the second embodiment of this disclosure.
  • the state of the vehicle-mounted device according to this embodiment is the normal state 450 in which the process of collecting the sensor data and uploading it to the server 102 is repeated, and the state of the vehicle-mounted device being uploaded to the server 102 in the normal state 450.
  • the throughput line speed
  • a transition is made from the normal state 450, a sensor data is collected and buffered without being uploaded to the server 102 and a buffering state 452, and the in-vehicle device is buffered.
  • the buffer transmission state 454 for sequentially uploading the sensor data buffered in the buffering state 452 to the server 102 is displayed. Including. Upon completion of uploading from the buffer in the buffering state 452, the state returns to the normal state 450. When the throughput falls below the threshold value in the buffering state 452, the state returns to the buffering state 452.
  • the buffered data can be continuously uploaded to the server 102 even at a reduced line speed.
  • It further includes a subset send state 456 that repeats the process of converting to such a smaller subset and uploading to the server 102.
  • the line speed returns to a value higher than the threshold value while the vehicle-mounted device is in the subset transmission state 456, the state of the vehicle-mounted device transits to the buffer transmission state 454.
  • the state of the vehicle-mounted device changes in accordance with the state of the vehicle-mounted device and the change in the throughput.
  • the in-vehicle device when the line speed decreases, interrupts the upload of the sensor data to the server 102 and buffers it.
  • the in-vehicle device sequentially uploads the buffered sensor data to the server 102 when the line speed is restored.
  • the memory capacity for buffering is also limited, if the buffering time becomes long, it will not be possible to buffer the sensor data any further. Although the memory capacity can be secured by overwriting old data, if the period in which the sensor data or the like is not uploaded to the server 102 is too long, the service content provided by the server 102 may be affected. Therefore, in this embodiment, when a predetermined time elapses after the buffering of the sensor data is started, the buffered sensor data is converted into a smaller-sized subset and sequentially uploaded to the server 102.
  • One method is to estimate the buffering period here based on the buffer length of the buffer unit and the sensor data length. The size of the sub data set at this time may be fixed or may be changed depending on the available line speed.
  • the sensor data is continuously buffered even when the state of the vehicle-mounted device transits from the buffering state 452 to the buffer transmission state 454. Also, unlike the first embodiment, in the buffer transmission state 454, the sensor data collected from the sensor is simultaneously uploaded to the server 102 together with the three types of buffered sensor data.
  • an in-vehicle device 490 mounted in a vehicle 480 according to the second embodiment is a modification of the in-vehicle device 150 according to the first embodiment shown in FIG.
  • vehicle-mounted device 490 has a buffering function similar to sensor data processing unit 190 in place of sensor data processing unit 190 in FIG. 4, but is buffered after the buffering period ends. It also includes a sensor data processing unit 492 that converts the sensor data into small data (sub data set) that can be uploaded even at a low line speed and uploads the data to the server 102 via the packet transmission unit 216.
  • the sensor data processing unit 492 includes a state control unit 510 for changing the state of the sensor data processing unit 492 according to FIG. 14 based on the line speed and the buffering period in the sensor data processing unit 190 of FIG.
  • a transmission buffer 518 which is a FIFO (first-in first-out) buffer for temporarily holding the packet given to 216, is added, and a buffer unit 500 including a ring buffer is included instead of the buffer unit 204 in FIG.
  • the buffer unit 500 has a different configuration from the buffer unit 204, but its function and usage are the same as those of the buffer unit 204, as will be described later.
  • the sensor data processing unit 492 is further connected to the state control unit 510 and the shadowing detection unit 214 instead of the buffer output control unit 212 of FIG. 4, and buffers the data to be uploaded to the server 102 according to the state transition of FIG.
  • the sensor data read from the buffer unit 500 by the buffer output control unit 516 in the subset transmission state 456 shown in FIG. Is controlled by a data conversion unit 504 for converting the sub-data set having a smaller data capacity and a control signal from the state control unit 510.
  • the output of the buffer output control unit 516 is selected. To the transmission buffer 518.
  • the output of the data conversion unit 504 is selected and given to the transmission buffer 518.
  • the output of the buffer output control unit 516 is given to the data conversion unit 504. It includes selectors 506 and 508 for giving the converted data to the transmission buffer 518.
  • FIG. 16 shows a schematic diagram of the buffer unit 500.
  • the buffer unit 500 is a ring buffer, and is a memory in which the start address of the buffer is associated with the end address.
  • the buffer unit 500 has a write pointer 540 that points to a write address and a read pointer 542 that points to a read address.
  • the read pointer 542 points to the end of the data existing in the buffer unit 500.
  • the data is read from the memory location pointed to by read pointer 542 and advance read pointer 542 to the next address.
  • the buffer unit 500 can be used as a ring-shaped buffer by controlling the pointer so that the read pointer 542 follows the write pointer 540.
  • the direction in which the write pointer 540 advances is referred to as the front of the write pointer 540, and the direction opposite to the direction in which the write pointer 540 advances is referred to as the rear of the write pointer 540.
  • areas 550, 552, and 554 can be considered in order from the position close to the write pointer 540. These can be used as the first buffer 206, the second buffer 208, and the third buffer 210 shown in FIG. 5, respectively.
  • read pointers 542, 544 and 546 are used in the areas 550, 552 and 554, respectively. These pointers point to the end of each area when the data is fully stored in that area, and to the memory location where the data is stored when the data exists halfway through the area. If there is no data in that area, the value of the pointer is set to null, for example.
  • FIG. 17 shows a control structure of a program for causing the computer to function so as to control the state of the sensor data processing unit 492. This program is repeatedly activated at regular intervals.
  • this program measures step 560 for measuring the throughput with the server 102, and step 562 for branching the control flow depending on whether or not the throughput measured in step 560 is greater than a threshold value. And a step 564 of branching the control flow depending on whether the value of the flag is 1 when the determination in step 562 is negative.
  • This program further determines whether the value of the flag is 2 or 0 when the determination in step 564 is negative and branches the control flow according to the determination, and the determination in step 570 is affirmative.
  • the flag is set to 1 and step 572 is followed by step 572, a timer is set in a predetermined buffering period to start and end execution of this program, and when the determination in step 564 is affirmative
  • step 574 it is determined whether or not the timer started in step 574 has expired, and the control flow is branched according to the result.
  • the determination in step 566 is affirmative, the flag is set to 3 568 to end execution of the program.
  • the determination in step 570 is negative and the determination in step 566 is negative, the execution of this program ends.
  • the program further determines whether the value of the flag is 1 or 3 in response to the affirmative determination in step 562, and branches the control flow according to the result, and the determination in step 578. Affirmative, the flag is set to 2 and the execution of this program ends, and in response to the negative determination in step 578, control is performed according to whether the flag value is 2 or not.
  • the determinations of step 584 of branching the flow of control depending on whether the buffer unit 500 is empty and the determination of step 584 are positive.
  • 586 in response to setting the flag to 0 and ending the execution of the program.
  • the execution of this program also ends when the determination in step 582 is negative and when the determination in step 584 is negative.
  • FIG. 18 shows a control structure of a program for operating the computer so as to function as the buffer input control unit 202 in the sensor data processing unit 492 when the in-vehicle device 490 receives the sensor data.
  • This program is started each time sensor data is received.
  • this program determines whether the value of the flag is 0 or 2, or other value, and branches the control flow according to the result, and when the determination in step 620 is affirmative, When the determination in step 620 is negative, the sensor data is stored in the buffer section 500 and the process is terminated. And step 622.
  • this program executes step 650 of branching the flow of control according to whether the flag value is 0, 1, 2, and 3, and when the flag value is 0,
  • the received sensor data is read from the transmission buffer 518, packetized, uploaded to the server 102 via the packet transmission unit 216, and the execution of this program is terminated.
  • Step 658 in which each of the ringed sensor data (up to three types) is read in parallel, and the data read in step 658 are each converted into smaller subsets, packetized and uploaded to the server 102 to execute this program. Terminating step 660. When the flag value is 1, this program does nothing.
  • the in-vehicle device 490 operates as follows.
  • the flag is set to 0 (normal state) when the in-vehicle device 490 is activated.
  • the sensor data collection unit 200 collects sensor data from the sensor device 122 and gives the sensor data to the buffer input control unit 202.
  • the buffer input control unit 202 Upon receiving the sensor data, the buffer input control unit 202 gives the sensor data to the transmission buffer 518.
  • the packet transmission unit 216 reads the sensor data from the transmission buffer 518, packetizes it, and uploads it to the server 102.
  • the state transits to the buffering state 452 as shown in FIG. That is, when the shadowing detection unit 214 detects the occurrence of shadowing based on the data from the packet transmission unit 216, it gives the information to the state control unit 510. In response to this signal, state control unit 510 rewrites the value of flag 514 to 1 and starts timer 512.
  • step 620 becomes affirmative, and the process of step 624 is executed.
  • the control moves to step 652 according to the determination in step 650.
  • step 652 the sensor data stored in the transmission buffer 518 is read by the packet transmission unit 216 and uploaded to the server 102.
  • the program of FIG. 17 is started, the throughput is measured in step 560, and then the determination in step 562 is negative. Since the determination in step 564 is negative, the determination in step 570 is performed.
  • the determination in step 570 is affirmative, the flag is set to 1 in step 572, and the timer is started in step 574.
  • the vehicle-mounted device 490 operates as follows. Referring to FIG. 15, when buffer input control unit 202 receives sensor data from sensor data collection unit 200, buffer input control unit 202 stores the sensor data in the write position of buffer unit 500 and advances write pointer 540 by 1. This state will continue unless the throughput is improved. If the throughput improves before the timer 512 expires, the state of the sensor data processing unit 492 transits to the buffer transmission state 454. When the timer 512 expires in the buffering state 452, the state of the buffering state 452 transits to the subset transmission state 456.
  • step 560 when the throughput measured in step 560 is less than or equal to the threshold when the program of FIG. 17 is started, steps 562, 564, 566 are executed. Step 568 is not executed while the timer has not expired, and step 568 is executed when the timer has expired. This process is repeated.
  • step 620 every time the program shown in FIG. 18 is executed, the control moves from step 620 to 622, and the sensor data is stored in the buffer unit 500. This process is repeated. Even if the program shown in FIG. 19 is executed, nothing is processed because the flag is 1. The data is simply stored in the buffer unit 500.
  • step 562 if the throughput becomes larger than the threshold value before the timer expires, the determination of step 562 becomes affirmative in the program of FIG. 17, the processes of steps 578 and 580 are executed, and the flag is set to 2. That is, the state of the sensor data processing unit 492 transits to the buffer transmission state 454.
  • step 566 determines whether the timer 512 expires before the throughput is improved. If the timer 512 expires before the throughput is improved, the determination in step 566 becomes affirmative after execution of steps 560, 562 and 564 when the program of FIG. 17 is executed. As a result, step 568 is executed and the flag is set to 3. That is, the state of the sensor data processing unit 492 transits to the subset transmission state 456 (FIG. 14).
  • the buffer output control unit 516 shown in FIG. Give to credit buffer 518.
  • the buffer input control unit 202 stops buffering the sensor data in the buffer unit 500 and transmits the data to the transmission buffer 518.
  • the packet transmission unit 216 sequentially reads both sensor data (from the buffer input control unit 202 and from the buffer unit 500) stored in the transmission buffer 518, packetizes them, and uploads them to the server 102. When the upload from the buffer is complete, the state returns to normal state 450.
  • steps 560, 562, 564, 570, 572, 574 are executed in this order. To be done. As a result, the flag is set to 1 (the state of the sensor data processing unit 492 returns to the buffering state 452), and the timer is started.
  • the sensor data processing unit 492 shown in FIG. 15 operates as follows.
  • the buffer input control unit 202 stores the sensor data in the buffer unit 500. Similar to the buffering state 452, the buffer output control unit 516 reads up to three types of sensor data in parallel from the buffer unit 500 and gives them to the selector 506.
  • the selector 506 provides this sensor data to the data conversion unit 504 in the subset transmission state 456.
  • the data conversion unit 504 converts the sensor data into sub-data sets having a smaller size, and gives them to the selector 508.
  • the selector 508 stores this sub data set in the transmission buffer 518.
  • the packet transmission unit 216 reads this sub data set from the transmission buffer 518, packetizes it, and uploads it to the server 102.
  • the sensor data can be uploaded from the vehicle-mounted device 490 to the server 102 even if the throughput is low.
  • the data size that can be uploaded is limited, only data useful for the server 102 is selected as the sub data set.
  • the state of the sensor data processing unit 492 transits to the buffer transmission state 454, and the buffered sensor data is uploaded as it is.
  • the operation of the sensor data processing unit 492 in the subset transmission state 456 will be described in terms of the program as follows.
  • the flag is 3. If the throughput is not improved, steps 560, 562, 564, 570 are executed in this order each time the program shown in FIG. 17 is executed. Since the flag is 3, the determination in step 570 is negative and the flag value does not change. When the throughput is improved and becomes larger than the threshold value on the way, the processes of steps 560, 562, 578, and 580 are executed, the flag is set to 2, and the state of the sensor data processing unit 492 transits to the buffer transmission state 454.
  • steps 620 and 622 are executed every time the program of FIG. 18 is executed, and the sensor data is stored in the buffer unit 500 in step 622.
  • the program of FIG. 19 is repeatedly executed. Each time it is executed, the processes of steps 650, 658 and 660 are executed, the sensor data read from the buffer unit 500 is converted into a sub data set and uploaded to the server 102.
  • steps 620 and 624 are executed in the program of FIG. 18, and new sensor data is stored in the transmission buffer 518.
  • steps 650 and 656 are executed, the sensor data is read from the buffer unit 500 and uploaded to the server 102.
  • the buffered data is used by the server 102 without being wasted, and the server 102 can provide a more complete service.
  • the state changes from the buffering state 452 to the subset transmission state 456.
  • the subset transmission state 456 new sensor data is added to the buffer unit 500, while data previously stored in the buffer unit 500 is read out, converted into a sub data set having a smaller data size, and the data is stored in the server.
  • Uploaded to 102 Since a part of the sensor data of the vehicle-mounted device 490 can be continuously uploaded to the server 102, the server 102 can incorporate the data of the vehicle equipped with the vehicle-mounted device 490 into the service. As a result, the service provided by the server 102 can be made high quality.
  • only one subset transmission state 456 is adopted.
  • a plurality of stages such as the subset transmission state 456 may be provided in accordance with the throughput, and the states may be transited between them.
  • the size of the sub-data set may be larger when the communication throughput is larger and may be smaller when the communication throughput is smaller. That is, the ratio of the data size after conversion to the data size before conversion is a monotonically increasing function with respect to the throughput.
  • the smaller the throughput the smaller the data size that can be transmitted. Therefore, by determining the data size after conversion by a monotonically increasing function with respect to the throughput, the sensor data can be transmitted to the external device without interruption with the data size according to the size of the throughput.
  • the vehicle-mounted device 490 is substantially a processor including a computer 750, and serves as a CPU (Central Processing Unit) 770, and a data and command transmission path between the CPU 770 and each unit of the computer 750.
  • the computer 750 further includes a non-volatile auxiliary storage device 778 including a ROM (Read-Only Memory) 774, a RAM (Random Access Memory) 776, a hard disk or an SSD (Solid State Drive), and the like, all of which are connected to the bus 772.
  • ROM Read-Only Memory
  • RAM Random Access Memory
  • SSD Solid State Drive
  • a wireless communication unit 780 for providing communication with the outside by communication, an input/output interface (I/F) 782, a voice processing I/F 790 for providing voice interaction with a user, and a USB memory 762 are detachable, It includes a USB memory port 784 that enables communication between the USB memory 762 and other parts of the computer 750.
  • the vehicle-mounted device 490 further includes a touch panel 752 connected to the bus 772, a monitor 754 such as a liquid crystal display including a display control device, various ECUs 756 for controlling the vehicle connected to the input/output I/F 782, and various sensors such as LiDAR. 758, and a speaker and a microphone 760 connected to the audio processing I/F 790.
  • the ROM 774 stores a boot program for the computer 750 and the like.
  • the RAM 776 is used as a work area for storing various variables during processing by the CPU 770.
  • a program having the control structure shown in FIGS. 17 to 19 is stored in, for example, the USB memory 762 in FIG. 21, is distributed, is transferred by the auxiliary storage device 778, and is executed by the CPU 770. At the time of execution, this program is loaded from the USB memory 762 to the RAM 776 via the USB memory port 784 and the bus 772. Alternatively, this program is loaded into the RAM 776 from the auxiliary storage device 778 via the bus 772. The program can also be stored in the auxiliary storage device 778 from the USB memory 762 via the USB memory port 784.
  • the trigger to start the buffer processing is when shadowing occurs or when the condition instructed by the server comes to be satisfied, but the trigger is not limited to this.
  • the in-vehicle device may always buffer the sensor data. That is, the in-vehicle device, when acquiring the sensor data, transmits the sensor data to the server and buffers it at the same time. Then, the in-vehicle device stops the transmission of the sensor data and starts the transmission of the buffer data when the shadowing that has occurred is eliminated or when the condition instructed by the server is not satisfied. Good.
  • one buffer area may be secured at consecutive addresses.
  • the data areas of addresses M0 to M1 correspond to the first buffer 206, the second buffer 208, and the third buffer 210 of FIG. 5, respectively.
  • the sensor data is written at the address M0. After shifting the stored data to the right, the next data is written to address M0.
  • the data stored in the address M5 is discarded (the data on the left side of the address M5 is overwritten in the address M5) before the next data is written in the address M0.
  • the addresses M1, M3, and M5 are read start addresses, and the data of the left address is sequentially read according to the above-described priority.
  • the in-vehicle device can include three types of buffers for each sensor.
  • the buffer unit 204 FOG. 4
  • one buffer output control unit 212 sets the priority of each buffer in consideration of the real-time property between a plurality of sensors, and the parallel output. You may upload it.
  • the present invention is not limited to this.
  • the classification information is added, the classification of the sensor data in the server becomes easy.
  • the classification information should be used when determining the real-time property using it. It may not be added.
  • the server compares the current time with the sensor data acquisition time of the received sensor data, determines the real-time property of the received sensor data, and determines the corresponding area. (Eg, real-time data area 248, near real-time data area 250 and non-real-time data area 252 of FIG. 6).
  • the buffer input control unit 202 receives the transmission start instruction from the shadowing detection unit 214, so that the sensor data collection unit 200 transmits the buffer data while transmitting the buffer data.
  • the sensor data output from the sensor data collection unit 200 may be transmitted while transmitting the buffer data.
  • the shadowing detection unit 214 does not have to output the transmission start instruction to the buffer input control unit 202.
  • the packet transmission unit 216 transmits the data between the buffer input control unit 202 and the buffer output control unit 212. The output timing may be adjusted.
  • the buffer input control unit 202, the buffer unit 204, the buffer output control unit 212, the shadowing detection unit 214, and the buffer capacity determination unit 220 surrounded by the one-dot chain line are included.
  • the function may be realized by one or a plurality of semiconductor integrated circuits and may be mounted on the vehicle-mounted device 150 as a configuration different from the control unit 130 and the memory 128 (see FIG. 2).
  • the vehicle-mounted device may calculate the transmission delay time. For example, when the server receives the packet data including the type information, the reception time is transmitted to the in-vehicle device, and the in-vehicle device transmits the corresponding packet data and the data size (sensor data etc.) included in the packet.
  • the in-vehicle device can calculate the transmission delay time for each real-time property (for each type information) by using the reception time of the transmitted packet data at the server. Further, the in-vehicle device can quantize and store the line speed at the time of parallel upload. Therefore, in that case, the in-vehicle device can determine an appropriate buffer capacity for each buffer by receiving the processing delay time and the allowable delay time for each real-time property (for each type information) from the server.
  • the invention is not limited to this. Even if the infrastructure sensor is fixedly installed, the radio waves transmitted from the antenna may be shielded by the vehicle running around the infrastructure sensor and shadowing may occur. Therefore, the infrastructure sensor is equipped with multiple types of buffers according to the delay time, as in the in-vehicle device. When shadowing occurs, sensor data is buffered, and when shadowing is eliminated, classification information is added to the buffer data and delay time is added. The shorter data may be preferentially uploaded in parallel. Thereby, the server 102 can use the sensor data received from the infrastructure sensor more effectively.
  • the data conversion unit 504 converts the sensor data into a sub data set having a smaller size and transmits it to the server 102.
  • the data set of the sensor data captured by the sensor data collection unit 200 from the sensor device 122 may be limited to only a part.
  • what kind of data to select may be determined according to a predetermined priority order, or may be determined according to an instruction from the server 102 when communication with the server 102 is possible. By doing so, even when the line speed with the server 102 is slow, the minimum sensor data can be transmitted to the server 102 and reflected in the driving support by the server 102.

Landscapes

  • Chemical & Material Sciences (AREA)
  • Analytical Chemistry (AREA)
  • Physics & Mathematics (AREA)
  • General Physics & Mathematics (AREA)
  • Arrangements For Transmission Of Measured Signals (AREA)
  • Traffic Control Systems (AREA)
  • Mobile Radio Communication Systems (AREA)

Abstract

車載装置は、車両に装備されたセンサにより検出されたセンサデータを収集する収集部と、収集部により収集されたセンサデータを外部装置に送信する送信部と、収集部により収集されたセンサデータを記憶するバッファ部と、所定条件が満たされるか否かを判定する判定部と、送信部によるセンサデータの外部装置への送信を制御する制御部とを含み、制御部は、判定部により所定条件が満たされると判定されたことを受けて、送信部に、収集部により収集されたセンサデータの外部装置への送信を中止させ、所定条件が満たされると判定部が判定した後に、所定条件が満たされないと判定部による判定が変化したことを受けて、送信部に、バッファ部に記憶されているセンサデータを、センサデータの取得時刻と現在時刻との差である遅延時間に応じた優先度で、より遅延時間が小さいセンサデータをより優先して、外部装置に並列に送信させる。

Description

システム、サーバコンピュータ、車載装置、制御方法、半導体集積回路及びコンピュータプログラム
 この開示は、システム、サーバコンピュータ、車載装置、制御方法、半導体集積回路及びコンピュータプログラムに関する。この出願は、2018年11月29日出願の日本出願特願2018-223000号に基づく優先権を主張し、前記日本出願に記載された全ての記載内容をここに参照により援用する。
 自動車及び自動二輪車等(以下、車両という)の運転に関して運転者を支援する種々のシステム(以下、運転支援システムという)が提案されている。運転支援システムでは、道路及びその周辺に設置された種々のセンサ機器(カメラ、レーダ等)を備えた装置(以下、インフラセンサという)からセンサの情報を収集し、それを解析して交通に関する情報(事故、渋滞等)を、運転支援情報として車両に提供する。また、移動通信回線(以下、通信回線ともいう)の高速化に伴い、インフラセンサに限らず、車両に搭載されているセンサ機器からの情報を収集し、運転支援に有効利用する(運転に役立つ運転支援情報として提供する)ことも提案されている。例えば、第3世代移動通信システム及びそれに続く移動通信システムの規格化を推進している3GPP(Third Generation Partnership Project)からは、セルラーV2Xという規格が提案されている。Vは車両(Vehicle)を意味し、Xはそれ以外のものを意味している。この規格は、車両とそれ以外のものとの通信を、LTE(Long Term Evolution)及び5G(第5世代移動通信システム)により行なうことを目的とする。5G回線の回線速度は、LTE回線の100~1000倍の速度を実現することができる。
 後掲の特許文献1には、複数のセンサからセンサデータを、通信網を介して情報処理装置に伝送するシステムにおいて、状況に応じて、望ましい通信網を選択してセンサデータを伝送する技術が開示されている。センサネットワークでは、多種多様なセンサを利用するため、センサデータも多種多様であり、情報量が多いもの、少ないもの、伝送のリアルタイム性が要求されるもの、要求されないもの等がある。これらは状況に応じて変化する。これに対応するために、このシステムでは、伝送すべきセンサデータに対応するセンサID(個々のセンサを特定するID)、センサの種類及び情報量のうち少なくとも1つに基づいて通信網を選択し、センサデータを送信する。
特開2003-110749号公報
 この開示のある局面に係る車載装置は、車両に搭載される車載装置であって、車両に装備されたセンサにより検出されたセンサデータを収集する収集部と、収集部により収集されたセンサデータを外部装置に送信する送信部と、収集部により収集されたセンサデータを記憶するバッファ部と、所定条件が満たされるか否かを判定する判定部と、送信部によるセンサデータの外部装置への送信を制御する制御部とを含み、制御部は、判定部により所定条件が満たされると判定されたことを受けて、送信部に、収集部により収集されたセンサデータの外部装置への送信を中止させ、所定条件が満たされると判定部が判定した後に、所定条件が満たされないと判定部による判定が変化したことを受けて、送信部に、バッファ部に記憶されているセンサデータを、センサデータの取得時刻と現在時刻との差である遅延時間に応じた優先度で、より遅延時間が小さいセンサデータをより優先して、外部装置に並列に送信させる。
 この開示の別の局面に係るサーバコンピュータは、上記の車載装置から並列に送信されるセンサデータを受信する受信部と、受信部により受信されたセンサデータを、遅延時間に応じて複数に分類し、複数の分類の各々に応じたデータ処理を実行する処理部とを含む。
 この開示のさらに別の局面に係る半導体集積回路は、車両に装備されたセンサにより検出されたセンサデータを外部装置に送信する車載装置に搭載される半導体集積回路であって、センサにより検出されたセンサデータを記憶するバッファ部と、所定条件が満たされるか否かを判定する判定部と、車載装置によるセンサデータの外部装置への送信を制御する制御部とを含み、制御部は、判定部により所定条件が満たされると判定されたことを受けて、車載装置に、収集部により収集されたセンサデータの外部装置への送信を中止させ、所定条件が満たされると判定部が判定した後に、所定条件が満たされないと判定部による判定が変化したことを受けて、車載装置に、バッファ部に記憶されているセンサデータを、センサデータの取得時刻と現在時刻との差である遅延時間に応じた優先度で、より遅延時間が小さいセンサデータをより優先して、外部装置に並列に送信させる。
 この開示のさらに別の局面に係るシステムは、車両に搭載される車載装置と、車載装置と通信するサーバコンピュータとを含むシステムであって、車載装置は、車両に装備されたセンサにより検出されたセンサデータを収集する収集部と、収集部により収集されたセンサデータをサーバコンピュータに送信する送信部と、収集部により収集されたセンサデータを記憶するバッファ部と、所定条件が満たされるか否かを判定する判定部と、送信部によるセンサデータのサーバコンピュータへの送信を制御する制御部とを含み、制御部は、判定部により所定条件が満たされると判定されたことを受けて、送信部に、収集部により収集されたセンサデータのサーバコンピュータへの送信を中止させ、所定条件が満たされると判定部が判定した後に、所定条件が満たされないと判定部による判定が変化したことを受けて、送信部に、バッファ部に記憶されているセンサデータを、センサデータの取得時刻と現在時刻との差である遅延時間に応じた優先度で、より遅延時間が小さいセンサデータをより優先して、サーバコンピュータに並列に送信させ、サーバコンピュータは、車載装置から並列に送信されるセンサデータを受信する受信部と、受信部により受信されたセンサデータを、遅延時間に応じて複数に分類し、複数の分類の各々に応じたデータ処理を実行する処理部とを含む。
 この開示のさらに別の局面に係る制御方法は、車両に装備されたセンサにより検出されたセンサデータを収集する収集ステップと、収集ステップにより収集されたセンサデータを外部装置に送信する送信ステップと、収集ステップにより収集されたセンサデータを記憶するバッファステップと、所定条件が満たされるか否かを判定する判定ステップと、送信ステップによるセンサデータの外部装置への送信を制御する制御ステップとを含み、制御ステップは、判定ステップにより所定条件が満たされると判定されたことを受けて、送信ステップによる、収集ステップにより収集されたセンサデータの外部装置への送信を中止させるステップと、所定条件が満たされると判定ステップにおいて判定された後に、所定条件が満たされないと判定ステップにおける判定が変化したことを受けて、バッファステップにより記憶されているセンサデータを、センサデータの取得時刻と現在時刻との差である遅延時間に応じた優先度で、より遅延時間が小さいセンサデータをより優先して、外部装置に並列に送信するステップとを含む。
 この開示のさらに別の局面に係るコンピュータプログラムは、車両に搭載されるコンピュータに、車両に装備されたセンサにより検出されたセンサデータを収集する収集機能と、収集機能により収集されたセンサデータを外部装置に送信する送信機能と、収集機能により収集されたセンサデータを記憶するバッファ機能と、所定条件が満たされるか否かを判定する判定機能と、送信機能によるセンサデータの外部装置への送信を制御する制御機能とを実現させるためのコンピュータプログラムであって、制御機能は、判定機能により所定条件が満たされると判定されたことを受けて、送信機能による、収集機能により収集されたセンサデータの外部装置への送信を中止させる機能と、所定条件が満たされると判定機能が判定した後に、所定条件が満たされないと判定機能による判定が変化したことを受けて、バッファ機能により記憶されているセンサデータを、センサデータの取得時刻と現在時刻との差である遅延時間に応じた優先度で、より遅延時間が小さいセンサデータをより優先して、外部装置に並列に送信する機能とを含む。
 本開示の第7の局面に係る車載装置は、車両に装備されたセンサの出力するセンサデータを収集するセンサデータ収集部と、センサデータ収集部により収集されたセンサデータを格納可能なバッファと、センサデータ収集部により収集されたセンサデータ、又はバッファに格納されたセンサデータのいずれかを読出し、外部装置に送信する送信装置と、センサデータに関連する車載装置の状態を制御する状態制御部を含み、状態制御部は、車載装置の状態と、送信装置による外部装置へのセンサデータの送信のスループットとにしたがって、車載装置の状態を有限個の状態の間で遷移させる。
 本開示の第8の局面に係る車載装置の制御方法は、車両に装備されたセンサの出力するセンサデータを収集するセンサデータ収集部がセンサデータを収集するステップと、バッファがセンサデータ収集部により収集されたセンサデータを格納するステップと、センサデータ収集部により収集されたセンサデータ、又はバッファに格納されたセンサデータのいずれかを読出し、外部装置に送信するステップと、を含む、車両に搭載された車載装置の制御方法であって、さらに、センサデータに関連する車載装置の状態を制御する状態制御部が、車載装置の状態と、送信装置による外部装置へのセンサデータの送信のスループットとにしたがって、車載装置の状態を有限個の状態の間で遷移させるステップを含む。
 本開示の第9の局面に係るコンピュータプログラムは、コンピュータを、車両に装備されたセンサの出力するセンサデータを収集するセンサデータ収集部と、センサデータ収集部により収集されたセンサデータを格納可能なバッファと、センサデータ収集部により収集されたセンサデータ、又はバッファに格納されたセンサデータのいずれかを読出し、外部装置に送信する送信装置と、センサデータに関連する車載装置の状態を、車載装置の状態と、送信装置による外部装置へのセンサデータの送信のスループットとにしたがって、有限個の状態の間で遷移させる状態制御部として機能させる。
図1は、この開示の第1実施形態に係る運転支援システムの構成を示す模式図である。 図2は、車載装置のハードウェア構成を示すブロック図である。 図3は、サーバのハードウェア構成を示すブロック図である。 図4は、車載装置の機能的構成を示すブロック図である。 図5は、バッファの構成を示すブロック図である。 図6は、サーバの機能的構成を示すブロック図である。 図7は、車載装置の動作を示すフローチャートである。 図8は、サーバの動作を示すフローチャートである。 図9は、この開示の第1実施形態の第1変形例に係る車載装置の機能的構成を示すブロック図である。 図10は、バッファ容量の算出のためのパラメータを示す模式図である。 図11は、第1実施形態の第1変形例に係るサーバの機能的構成を示すブロック図である。 図12は、第1実施形態の第2変形例に係る車載装置の動作を示すフローチャートである。 図13は、図5と異なるバッファの構成を示すブロック図である。 図14は、この開示の第2実施形態に係る車載装置の状態の変化を示す状態遷移図である。 図15は、この開示の第2実施形態に係る車載装置の機能的構成を示すブロック図である。 図16は、第2実施形態に係る車載装置で使用されるリングバッファの模式図である。 図17は、コンピュータを、第2実施形態に係る車載装置の状態制御部として機能させるプログラムの制御構造を示すフローチャートである。 図18は、コンピュータを、第2実施形態に係る車載装置のセンサデータ収集部として機能させるプログラムの制御構造を示すプログラムの制御構造を示すフローチャートである。 図19は、コンピュータを、第2実施形態に係る車載装置のデータ処理部として機能させるプログラムの制御構造を示すフローチャートである。 図20は、この開示の第3実施形態に係る車載装置の状態の変化を示す状態遷移図である。 図21は、この開示の第2実施形態及びその変形例に係る車載装置を実現するコンピュータのハードウェア構成を示すブロック図である。
 [開示が解決しようとする課題]
 5Gでは、従来移動通信で使用されている周波数帯よりもさらに周波数が高い高周波数帯を使用することが検討されている。例えば、最大100GHzまでを対象とした検討が進められている。高周波数帯の電波は、空間伝搬の直進性が高く、空間伝搬により信号強度が大きく減衰する。そのため5Gでは、セルの大きさを従来よりも小さく設計する必要があり、建築物、樹木、移動体(車両、人等)による通信電波の遮蔽が起こり易くなる。特に、車両に搭載された車載装置からサーバ等にセンサデータを送信するときに、通信電波が遮蔽物により遮蔽され、基地局と通信ができない状態(以下、シャドウィングという)が発生する頻度が高くなる。例えば、車載装置が搭載された車両の走行中に、大型車両(ダンプカー、トレーラ等)がその車両の近くを並走するとき、並走している間シャドウィングが発生し、車載装置がセンサデータを送信できない状況が生じ得る。
 シャドウィング等により通信に支障が生じた場合、採用されている通信プロトコル(TCP/IP等)にしたがって、正常に送信されなかったことが検知され、送信できなかったデータを再送信する処理が繰返される。シャドウィングが解消して通信可能になり、サーバにセンサデータを送信できたとしても、サーバは、遅延時間(例えば、センサデータが車載装置で取得された時刻とサーバにより受信された時刻との差)が大きいセンサデータが運転支援に利用できなければ、そのセンサデータを利用せずに破棄する。このように、無駄な再送信が実行され、無駄なセンサデータが送信されるという問題がある。代替する通信網がなければ、特許文献1に開示された技術によっては、この問題を解決することはできない。
 したがって、この開示は、車載装置からのセンサデータの送信に支障が生じた状況において無駄な再送信を抑制し、送信可能になれば、送信先の装置に有効なセンサデータを送信できるシステム、サーバコンピュータ、車載装置、制御方法、半導体集積回路及びコンピュータプログラムを提供することを目的とする。
 [開示の効果]
 この開示によれば、車載装置からのセンサデータの送信に支障が生じた状況において無駄な再送信を抑制し、送信可能になれば、送信先の装置に有効なセンサデータを送信できる。
 [この開示の実施形態の説明]
 この開示の実施の形態の内容を列記して説明する。以下に記載する実施形態の少なくとも一部を任意に組合せてもよい。
 (1)この開示の第1の局面に係る車載装置は、車両に搭載される車載装置であって、車両に装備されたセンサにより検出されたセンサデータを収集する収集部と、収集部により収集されたセンサデータを外部装置に例えば通信回線を介して送信する送信部と、収集部により収集されたセンサデータを記憶するバッファ部と、所定条件が満たされるか否かを判定する判定部と、送信部によるセンサデータの外部装置への送信を制御する制御部とを含み、制御部は、判定部により所定条件が満たされると判定されたことを受けて、送信部に、収集部により収集されたセンサデータの外部装置への送信を中止させ、所定条件が満たされると判定部が判定した後に、所定条件が満たされないと判定部による判定が変化したことを受けて、送信部に、バッファ部に記憶されているセンサデータを、センサデータの取得時刻と現在時刻との差である遅延時間に応じた優先度で、より遅延時間が小さいセンサデータをより優先して、外部装置に並列に送信させる。これにより、不要なデータ送信処理を抑制し、外部装置により使用され得る有効なデータを送信できる。
 (2)所定条件は、外部装置との通信ができない現象の発生、又は、外部装置から受信したエリア情報により特定される道路地図上の所定範囲内に車両が位置すること及び外部装置との通信ができない現象の発生でもよく、所定条件が現象の発生であれば、判定部は、現象が発生していれば、所定条件が満たされると判定し、現象が発生していなければ、所定条件が満たされないと判定し、所定条件が、所定範囲内に車両が位置すること及び外部装置との通信ができない現象の発生であれば、判定部は、車両が所定範囲内に位置し且つ現象が発生していれば、所定条件が満たされると判定し、車両が所定範囲外に位置する又は現象が発生していなければ、所定条件が満たされないと判定してもよい。これにより、通信に支障が生じている状況又は所定範囲に車両が位置する場合において、不要なデータ送信処理を抑制し、通信可能になった場合又は所定範囲から車両が出た場合に、外部装置により使用され得る有効なデータを送信できる。
 (3)遅延時間は、遅延時間の大きさに応じて複数の分類のいずれかに分類され、送信部は、並列に送信する際に、バッファ部に記憶されているセンサデータのうち、より小さい遅延時間を含む分類に対応するセンサデータをより優先して、外部装置に送信してもよい。これにより、よりリアルタイム性の高い情報をより優先して送信できる。
 (4)バッファ部は、複数のバッファを含んでもよく、複数のバッファは、複数の分類に1対1に対応してもよく、より小さい遅延時間を含む分類に対応するバッファの容量はより小さくなるようにしてもよい。すなわち、バッファ部は、複数の分類に分類される遅延時間を持つセンサデータをそれぞれ記憶するための複数のバッファを含んでもよく、複数のバッファの容量は、より小さい遅延時間を含む分類に対応するバッファの容量がより小さくなるように定められていてもよい。これにより、リアルタイム性に応じて、適切なバッファ容量を設定できる。
 (5)車載装置は、外部装置から、外部装置が行なう複数の処理がそれぞれ処理対象とするセンサデータの取得時刻と処理を実行する時刻との差の上限である複数の許容遅延時間を受信する受信部をさらに含んでもよく、バッファ部は、複数のバッファを含み、複数のバッファは、複数の許容遅延時間に1対1に対応し、バッファの容量は、許容遅延時間の大きさに応じて設定されるようにしてもよい。すなわち、バッファ部は、それぞれ複数の許容遅延時間に対応して設定された容量を持ち、それぞれ複数の処理が処理対象とするセンサデータを記憶するための複数のバッファを含んでもよい。これにより、外部装置によるサービスで要求される許容遅延時間に応じた適切なデータを送信できる。車載装置の走行位置によって、車載装置がセンサデータを送信する外部装置は異なり得る。また、サービスで要求される許容遅延時間も異なり得る。これらの変化に適切に対応できる。
 (6)受信部は、許容遅延時間毎に対応するセンサデータが車載装置から送信されてから外部装置により受信されるまでの時間である伝送遅延時間と、許容遅延時間毎に対応するセンサデータに対して処理を開始してから完了するまでにかかる時間である処理遅延時間とを外部装置からさらに受信してもよく、車載装置は、送信部が並列に送信する際の通信回線の回線速度を予測する予測部と、複数のバッファの容量を、予測部により予測された回線速度、許容遅延時間、伝送遅延時間、処理遅延時間、及び、送信部が並列に送信する際の、許容遅延時間毎に対応するセンサデータを複数のバッファからそれぞれ読出してから送信するまでの処理速度であるスループットに応じて決定された値に変更する変更部とをさらに含んでもよい。これにより、無駄のない、適切なバッファ容量を設定できる。
 (7)バッファ部は、判定部により所定条件が満たされると判定されたことを受けて、収集部により収集されたセンサデータの記憶を開始し、所定条件が満たされると判定部が判定した後に、所定条件が満たされないと判定部による判定が変化したことを受けて、収集部により収集されたセンサデータの記憶を停止するようにしてもよい。これにより、無駄なバッファ処理を回避できる。
 (8)この開示の第2の局面に係るサーバコンピュータは、上記の車載装置から並列に送信されるセンサデータを受信する受信部と、受信部により受信されたセンサデータを、遅延時間に応じて複数に分類し、複数の分類の各々に応じたデータ処理を実行する処理部とを含む。これにより、サーバは、データ処理に適したセンサデータを受信できる。
 (9)この開示の第3の局面に係る半導体集積回路は、車両に装備されたセンサにより検出されたセンサデータを外部装置に送信する車載装置に搭載される半導体集積回路であって、センサにより検出されたセンサデータを記憶するバッファ部と、所定条件が満たされるか否かを判定する判定部と、車載装置によるセンサデータの外部装置への送信を制御する制御部とを含み、制御部は、判定部により所定条件が満たされると判定されたことを受けて、車載装置に、センサにより検出されたセンサデータの外部装置への送信を中止させ、所定条件が満たされると判定部が判定した後に、所定条件が満たされないと判定部による判定が変化したことを受けて、車載装置に、バッファ部に記憶されているセンサデータを、センサデータの取得時刻と現在時刻との差である遅延時間に応じた優先度で、より遅延時間が小さいセンサデータをより優先して、外部装置に並列に送信させる。これにより、不要なデータ送信処理を抑制し、外部装置により使用され得る有効なデータを送信できる。
 (10)この開示の第4の局面に係るシステムは、車両に搭載される車載装置と、車載装置と通信するサーバコンピュータとを含むシステムであって、車載装置は、車両に装備されたセンサにより検出されたセンサデータを収集する収集部と、収集部により収集されたセンサデータをサーバコンピュータに送信する送信部と、収集部により収集されたセンサデータを記憶するバッファ部と、所定条件が満たされるか否かを判定する判定部と、送信部によるセンサデータのサーバコンピュータへの送信を制御する制御部とを含み、制御部は、判定部により所定条件が満たされると判定されたことを受けて、送信部に、収集部により収集されたセンサデータのサーバコンピュータへの送信を中止させ、所定条件が満たされると判定部が判定した後に、所定条件が満たされないと判定部による判定が変化したことを受けて、送信部に、バッファ部に記憶されているセンサデータを、センサデータの取得時刻と現在時刻との差である遅延時間に応じた優先度で、より遅延時間が小さいセンサデータをより優先して、サーバコンピュータに並列に送信させ、サーバコンピュータは、車載装置から並列に送信されるセンサデータを受信する受信部と、受信部により受信されたセンサデータを、遅延時間に応じて複数に分類し、複数の分類の各々に応じたデータ処理を実行する処理部とを含む。これにより、不要なデータ送信処理を抑制し、サーバコンピュータによりデータ処理に使用され得る有効なデータを送信できる。
 (11)この開示の第5の局面に係る制御方法は、車両に装備されたセンサにより検出されたセンサデータを収集する収集ステップと、収集ステップにより収集されたセンサデータを外部装置に送信する送信ステップと、収集ステップにより収集されたセンサデータを記憶するバッファステップと、所定条件が満たされるか否かを判定する判定ステップと、送信ステップによるセンサデータの外部装置への送信を制御する制御ステップとを含み、制御ステップは、判定ステップにより所定条件が満たされると判定されたことを受けて、送信ステップによる、収集ステップにより収集されたセンサデータの外部装置への送信を中止させるステップと、所定条件が満たされると判定ステップにおいて判定された後に、所定条件が満たされないと判定ステップにおける判定が変化したことを受けて、バッファステップにより記憶されているセンサデータを、センサデータの取得時刻と現在時刻との差である遅延時間に応じた優先度で、より遅延時間が小さいセンサデータをより優先して、外部装置に並列に送信するステップとを含む。これにより、不要なデータ送信処理を抑制し、外部装置により使用され得る有効なデータを送信できる。
 (12)この開示の第6の局面に係るコンピュータプログラムは、車両に搭載されるコンピュータに、車両に装備されたセンサにより検出されたセンサデータを収集する収集機能と、収集機能により収集されたセンサデータを外部装置に送信する送信機能と、収集機能により収集されたセンサデータを記憶するバッファ機能と、所定条件が満たされるか否かを判定する判定機能と、送信機能によるセンサデータの外部装置への送信を制御する制御機能とを実現させるためのコンピュータプログラムであって、制御機能は、判定機能により所定条件が満たされると判定されたことを受けて、送信機能による、収集機能により収集されたセンサデータの外部装置への送信を中止させる機能と、所定条件が満たされると判定機能が判定した後に、所定条件が満たされないと判定機能による判定が変化したことを受けて、バッファ機能により記憶されているセンサデータを、センサデータの取得時刻と現在時刻との差である遅延時間に応じた優先度で、より遅延時間が小さいセンサデータをより優先して、外部装置に並列に送信する機能とを含む。これにより、不要なデータ送信処理を抑制し、外部装置により使用され得る有効なデータを送信できる。
 (13)本開示の第7の局面に係る車載装置は、車両に装備されたセンサの出力するセンサデータを収集するセンサデータ収集部と、センサデータ収集部により収集されたセンサデータを格納可能なバッファと、センサデータ収集部により収集されたセンサデータ、又はバッファに格納されたセンサデータのいずれかを読出し、外部装置に送信する送信装置と、センサデータに関連する車載装置の状態を制御する状態制御部とを含み、状態制御部は、車載装置の状態と、送信装置による外部装置へのセンサデータの送信のスループットとにしたがって、車載装置の状態を有限個の状態の間で遷移させる。
 状態とスループットの変化とに追随して、車載装置の状態が変化する。車載装置の有限個の状態をあらかじめ適切に設定しておくことで、シャドウィング等が発生したときも適切にセンサデータを処理できる。
 (14)有限個の状態は、センサデータ収集部により収集されたセンサデータを送信装置によって外部装置に送信する第1の状態、センサデータ収集部により収集されたセンサデータをバッファに格納する第2の状態、及び、バッファに格納されたセンサデータを読出し、送信装置を介して外部装置に送信する第3の状態を含んでもよい。
 第1の状態では、センサデータを外部装置に送信し、第2の状態ではバッファに格納する。第3の状態では、バッファに格納されたセンサデータを外部装置に送信する。送信のスループットに応じてこれらを組合せ、適宜状態遷移させることで、センサデータを外部装置に送信する処理と、外部装置に送信せずバッファに蓄積する処理と、バッファに蓄積されたセンサデータを外部に送信する処理とを状態遷移により切替えて実行できる。
 (15)状態制御部は、車載装置が第1の状態にあるときに、スループットがしきい値より大きい値からしきい値以下の値に変化したことに応答して、第1の状態から第2の状態に車載装置の状態を遷移させる第1の状態遷移部と、車載装置が第2の状態にあるときに、スループットがしきい値より大きな値に変化したことに応答して、車載装置の状態を第2の状態から第3の状態に遷移させる第2の状態遷移部と、車載装置が第2の状態にあるときに、バッファ内にデータが存在しないことが検知されたことに応答して、車載装置の状態を第3の状態から第1の状態に遷移させる第3の状態遷移部と、車載装置が第3の状態にあるときにスループットがしきい値以下になったことに応答して、車載装置の状態を第3の状態から第2の状態に遷移させる第4の状態遷移部とを含んでもよい。
 センサデータを外部に送信しているときにスループットが低下したときには、車載装置は第2の状態に遷移し、センサデータをバッファにバッファリングする。第2の状態でスループットが回復すると、車載装置は第3の状態に遷移し、バッファリングしていたセンサデータを外部装置に送信する。スループットの変化に対しても、センサデータを全て外部装置に送信できる。
 (16)有限個の状態はさらに、バッファに格納されたセンサデータを読出し、よりデータサイズの小さなサブデータに変換して送信装置を介して外部装置に送信する第4の状態を含んでもよく、状態制御部は、さらに、車載装置が第2の状態にある時間がしきい時間より長くなったことに応答して、車載装置の状態を第2の状態から第4の状態に変化させる第5の状態遷移部を含んでもよい。
 センサデータをバッファリングしている時間がしきい時間より長くなると、バッファに格納されたセンサデータを順に読出し、データサイズを小さく変換して外部に送信する。スループットが低い時間が長時間にわたり継続したときでも、センサデータの中で、重要な一部のみを外部装置に送信できる。
 (17)有限個の状態はさらに、センサデータ収集部により収集されるセンサデータを、より小さなサブデータに限定する第4の状態を含んでもよく、状態制御部は、さらに、車載装置が第2の状態にある時間がしきい時間より長くなったことに応答して、車載装置の状態を第2の状態から第4の状態に変化させる第5の状態遷移部を含んでもよい。
 センサデータをバッファリングしている時間がしきい時間より長くなると、センサ収集部がセンサから収集するセンサデータを、より小さなサブデータに限定し外部に送信する。スループットが低い時間が長時間にわたり継続したときでも、センサデータの中で、重要な一部のみを外部装置に送信できる。
 (18)状態制御部はさらに、車載装置が第4の状態にあるときに、スループットがしきい値より大きくなったことに応答して、車載装置の状態を第3の状態に遷移させる第6の状態遷移部を含んでもよい。
 センサデータのデータサイズを小さく変換して外部に送信しているときにスループットが回復すれば、センサデータをそのまま外部装置に送信する状態に戻る。スループットが十分高いときには、蓄積されたデータを無駄にすることなく外部で利用できる。
 (19)状態制御部はさらに、車載装置が第4の状態にあるときに、スループットがしきい値より大きくなったことに応答して、車載装置の状態を第1の状態に遷移させる第7の状態遷移部を含んでもよい。
 データサイズの小さなセンサデータを送信する状態となった後に、スループットが回復した場合には、蓄積されたセンサデータではなく、取得されたセンサデータをそのまま送信する。外部装置では、通信が回復するとともにリアルタイムのセンサデータを取得でき、最新の情報を利用したサービスを提供できる。
 (20)車載装置は、第7の状態遷移部により車載装置の状態が第4の状態から第1の状態に遷移したことに応答して、バッファに記憶されているセンサデータをクリアするデータクリア部をさらに含んでもよい。
 収集されたセンサデータをそのまま送信する場合、バッファにデータが残る。次にバッファを使用する場合に備えてバッファをクリアしておく必要がある。バッファをクリアしておくことにより、次回、スループットが落ちたときにバッファを利用できる。
 (21)第4の状態における変換後のデータサイズの、変換前のデータサイズに対する比は、スループットに対する単調増加関数であってもよい。
 スループットが小さくなれば、送信できるデータサイズは小さくなる。したがって、変換後のデータサイズを、スループットに対する単調増加関数で定めることにより、スループットの大きさにあわせたデータサイズでセンサデータを外部装置に送信できる。
 (22)本開示の第8の局面に係る車載装置の制御方法は、車両に装備されたセンサの出力するセンサデータを収集するセンサデータ収集部がセンサデータを収集するステップと、センサデータ収集部により収集されたセンサデータをバッファに格納するステップと、センサデータ収集部により収集されたセンサデータ、又はバッファに格納されたセンサデータのいずれかを読出し、外部装置に送信するステップと、センサデータに関連する車載装置の状態を制御する状態制御部が、車載装置の状態と、外部装置へのセンサデータの送信のスループットとにしたがって、車載装置の状態を有限個の状態の間で遷移させるステップとを含む。
 状態とスループットの変化とに追随して、車載装置の状態が変化する。車載装置の有限個の状態をあらかじめ適切に設定しておくことで、シャドウィング等が発生したときも適切にセンサデータを処理できる。
 (23)本開示の第9の局面に係るコンピュータプログラムは、コンピュータを、車両に装備されたセンサの出力するセンサデータを収集するセンサデータ収集部と、センサデータ収集部により収集されたセンサデータを格納可能なバッファと、センサデータ収集部により収集されたセンサデータ、又はバッファに格納されたセンサデータのいずれかを読出し、外部装置に送信する送信装置と、センサデータに関連する車載装置の状態を、車載装置の状態と、送信装置による外部装置へのセンサデータの送信のスループットとにしたがって、有限個の状態の間で遷移させる状態制御部として機能させる。
 状態とスループットの変化とに追随して、車載装置の状態が変化する。車載装置の有限個の状態をあらかじめ適切に設定しておくことで、シャドウィング等が発生したときも適切にセンサデータを処理できる。
  [この開示の実施形態の詳細]
 以下の実施形態では、同一の部品には同一の参照番号を付してある。それらの名称及び機能も同一である。したがって、それらについての詳細な説明は繰返さない。
  (第1実施形態)
 [全体構成]
 図1を参照して、この開示の第1実施形態に係る運転支援システム100は、サーバ102と、車両106に搭載され、基地局104及びネットワーク108を介してサーバ102と通信する車載装置120とを含む。サーバ102は、車載装置120に対して運転支援情報を提供し、車両106の運転者を支援する。基地局104は、5G回線等による移動通信サービスを提供している。サーバ102と基地局104との間の通信はネットワーク108を介して行なわれ、有線又は無線で通信される。
 車載装置120は、5G回線による通信機能を有している。なお、車載装置120の通信機能は、5G回線以外によるものであってもよい。検知対象110は、車両106の車載センサにより検知される対象物である。図1では人を示しているが、これに限らず、信号機、建造物等も対象物である。
 図1には、代表的に1つの基地局を示しているが、これに限定されない。通常、複数の基地局が設けられている。車両に関しても、図1では代表的に1台の車両を示しているが、これに限定されず、サーバ102はより多くの車両の車載装置と通信し、情報を収集して解析し、運転支援情報を提供する。
  [車載装置のハードウェア構成]
 図2を参照して、車両106に搭載されている車載装置120のハードウェア構成の一例を示す。車載装置120は、センサ機器122に接続されたインターフェイス部(以下、I/F部という)124、通信を行なう通信部126、データを記憶するメモリ128、それらを制御する制御部130、及び、各部の間でデータを交換するためのバス132を含む。車載装置120は、図2に示した構成要素以外に、タイマ、電源装置等、車載装置として機能するために必要な構成をも含んでいる。
 センサ機器122は、車両106に搭載されているセンサである。車両には、種々のセンサが搭載されているが、それらのうちセンサ機器122は、運転支援情報の生成に供するものを意味する。センサ機器122は、例えば、イメージセンサ(CCD(Charge-Coupled Device)カメラ、CMOS(Complementary Metal-Oxide-Semiconductor)カメラ等)、レーザセンサ(LiDAR(Light Detection and Ranging)等)、ミリ波レーダ等である。センサ機器122は、対象を検知して所定の検出信号(アナログ信号又はデジタルデータ)を出力する。
 センサ機器122による検出信号はI/F部124に入力される。I/F部124はA/D変換部を含み、アナログ信号が入力されると所定周波数でサンプリングし、デジタルデータ(センサデータ)を生成して出力する。生成されたデジタルデータは、メモリ128に伝送されて記憶される。センサ機器122からの出力信号がデジタルデータであれば、I/F部124は、入力されるデジタルデータをメモリ128に記憶する。メモリ128は、例えば書換可能な不揮発性の半導体メモリ、又はハードディスクドライブ(以下、HDDという)である。
 メモリ128に記憶されるセンサデータには、センサデータを取得した時刻を特定する情報(例えば、タイムスタンプ。以下、センサデータ取得時刻という)と、センサデータ取得時刻に対応する車両106の位置を表す情報(以下、車両位置という)とが付される。例えば、センサ機器122がイメージセンサであれば、フレーム単位のセンサデータに、センサデータ取得時刻及び車両位置が付される。センサデータ取得時刻はタイマから取得され、車両位置はGPS(Global Positioning System)から取得される。
 通信部126は、5G回線での移動通信機能を有し、サーバ102との通信を行なう。車載装置120とサーバ102との間の通信は基地局104及びネットワーク108を介して行なわれる。通信部126は、5G回線で採用されている変調及び多重化を行なうためのIC、所定周波数の電波を放射及び受信するためのアンテナ、並びにRF(Radio Frequency)回路等により構成されている。
 制御部130は、CPU(Central Processing Unit)を含んで構成されており、各部を制御することにより、後述する車載装置120の機能を実現する。
  [サーバのハードウェア構成]
 図3を参照して、サーバ102は、制御部140、メモリ142、通信部144、及びバス146を含む。各部の間のデータ伝送は、バス146を介して行なわれる。制御部140は、例えばCPUを含み、各部を制御し、サーバ102の種々の機能を実現する。通信部144は、車両106からアップロードされるセンサデータを、基地局104及びネットワーク108を介して受信する。メモリ142は、書換可能な不揮発性の半導体メモリ及びHDD等の大容量記憶装置を含む。通信部144により受信されたデータは、メモリ142に伝送され、データベースとして記憶される。
  [車載装置の機能的構成]
 図4を参照して、車載装置120の機能について説明する。車載装置120は、センサ機器122により検出されたセンサデータを収集するセンサデータ収集部200、センサデータ収集部200の収集したセンサデータを処理しサーバ102にアップロードするパケットを生成するセンサデータ処理部190、センサデータ処理部190により生成されたパケットをサーバ102に送信するパケット送信部216、及びサーバ102からのパケットを受信するパケット受信部218を含む。
 センサデータ処理部190は、バッファ入力制御部202、バッファ部204、バッファ出力制御部212、及びシャドウィング検知部214を含む。バッファ部204は、第1バッファ206、第2バッファ208及び第3バッファ210を含む。
 センサデータ収集部200は、センサ機器122により検出されたセンサデータを収集する。バッファ入力制御部202は、センサデータ収集部200から入力されるセンサデータを、基地局104との通信状態に支障がなければパケット送信部216に出力し、支障があればバッファ部204に出力する。バッファ入力制御部202から出力されるセンサデータには、上記したように、センサデータ取得時刻と、センサデータ取得時刻に対応する車両106の車両位置とが付されている。ここでは、基地局104との通信状態の支障は、シャドウィングの発生である。シャドウィングの発生の情報は、後述するようにシャドウィング検知部214から伝送される。
 第1バッファ206、第2バッファ208及び第3バッファ210は、所定のバッファ容量を有し、入力されるデータを順に記憶する。第1バッファ206、第2バッファ208及び第3バッファ210は、例えば、メモリ128上に確保される。ここでは、図5に示すように、各バッファ容量は、第1バッファ206、第2バッファ208及び第3バッファ210の順で大きくなるように確保されているとする。バッファ入力制御部202は、バッファ部204にセンサデータを出力する場合、第1バッファ206に出力する。第1バッファ206、第2バッファ208及び第3バッファ210は、入力されるデータを記憶し、新たなデータが入力される場合、それまでに記憶したデータをシフト(図5では右側にシフト)した後、空いた領域に新たに入力されるデータを記憶する。第1バッファ206、第2バッファ208及び第3バッファ210は、記憶されるデータがバッファ容量を超えてオーバーフローする場合には、以下の様に機能する。即ち、図5を参照して、第1バッファ206がオーバーフローする場合には、第1バッファ206に記憶されているデータのうち、最も古いデータ(図5において斜線で示す)は第2バッファ208に出力される。第2バッファ208がオーバーフローする場合には、第2バッファ208に記憶されているデータのうち、最も古いデータ(図5において斜線で示す)は第3バッファ210に出力される。第3バッファ210がオーバーフローする場合には、第3バッファ210に記憶されているデータのうち、最も古いデータ(図5において斜線で示す)は破棄される。
 このように構成されることにより、第1バッファ206には最も遅延時間(センサデータが車載装置120で取得された時刻と特定時刻(現在時刻又はサーバ102により受信された時刻)との差)が短いデータ(例えば、遅延時間≦数百ミリ秒)が記憶される。第2バッファ208には、第1バッファ206に記憶されるデータよりも遅延時間が長いデータ(例えば、数百ミリ秒<遅延時間≦数秒)が記憶される。第3バッファ210には、第2バッファ208に記憶されるデータよりも遅延時間が長いデータ(例えば、数秒<遅延時間≦数分)が記憶される。第1バッファ206、第2バッファ208及び第3バッファ210に記憶されるセンサデータを、それぞれリアルタイムデータ、準リアルタイムデータ、及び非リアルタイムデータともいう。予め設定される各バッファがデータ(センサデータ、センサデータ取得時刻及び車両位置)を記憶する時間、並びに、それに対応する各バッファ容量は、サーバ102が提供するサービス(運転支援情報の提供等)に使用されるセンサデータに許される遅延時間(例えば、センサデータ取得時刻とセンサデータの処理完了時刻との差)に応じて設定されてもよい。以下、サービス毎に許される遅延時間の上限を「許容遅延時間」という。このように、センサデータの遅延時間(以下、リアルタイム性ともいう)に応じて複数のバッファ領域を備えることにより、後述するように、よりリアルタイム性の高い情報をより優先して送信できる。また、センサデータのリアルタイム性に応じてバッファ容量を設定することにより、適切なバッファ容量を設定できる。なお、上記した各バッファの記憶時間は一例であり、上記と異なる時間範囲でデータを記憶してもよい。後述するように、各バッファの記憶時間(対応するバッファ容量)は、サーバ102で実行されるサービスに応じて設定すればよい。
 バッファ出力制御部212は、基地局との通信に生じていた支障がなくなれば、第1バッファ206、第2バッファ208及び第3バッファ210からセンサデータを並列に読出して、パケット送信部216に出力する。例えば、バッファ出力制御部212は、第1バッファ206、第2バッファ208及び第3バッファ210の各々における最も古いデータ(図5の斜線を付した部分)から読出す。このとき、バッファ出力制御部212は、遅延時間が短いセンサデータを優先して読出す。即ち、第1バッファ206、第2バッファ208及び第3バッファ210の順で、データ読出しの優先度が低くなる。したがって、読出しの初期には、特定のバッファからのみデータが読出されることはなく、第1バッファ206、第2バッファ208及び第3バッファ210から並列に読出される。時間経過に応じて、第1バッファ206、第2バッファ208の順で、読出されるデータがなくなり、終期には第3バッファ210からのみデータが読出される。バッファ出力制御部212は、第1バッファ206、第2バッファ208及び第3バッファ210から読出したセンサデータの遅延時間を特定できる情報を、センサデータに付加して、パケット送信部216に出力する。例えば、バッファ出力制御部212は、リアルタイムデータ、準リアルタイムデータ、及び非リアルタイムデータを表す分類情報を、センサデータに付加して、パケット送信部216に出力する。バッファ出力制御部212は、第1バッファ206、第2バッファ208及び第3バッファ210にバッファされていたセンサデータを全てパケット送信部216に出力すると、所定の情報(以下、出力完了情報ともいう)をシャドウィング検知部214に出力する。
 パケット送信部216は、入力されるデータを、通信プロトコルにしたがってパケット化し(ヘッダデータの付加、分割等)、送信する。パケット送信部216に入力されるデータは、バッファされていたデータであれば、分類情報が付加されている(センサデータ、センサデータ取得時刻、車両位置及び分類情報)が、そうでなければ、分類情報が付加されていない(センサデータ、センサデータ取得時刻及び車両位置)。第1バッファ206、第2バッファ208及び第3バッファ210から、優先度に応じて並列に読出されたバッファデータを送信することを、以下においては「並列アップロード」ともいう。この場合、「並列アップロード(並列に送信する)」とは、1)複数種類のデータを1個ずつ読出して、これらをまとめて1つのパケットに組立てて送信すること、2)複数種類のデータを1個ずつ読出して、それぞれ別々のパケットを組立てて1つの無線通信装置を介して連続して送信すること、3)複数種類のデータを1個ずつ読出して、それらをつないだ1つのデータを作り、それを複数のパケットに分割して送信すること、及び4)複数の無線送信装置がある場合には、複数種類のデータを1個ずつ読出して別々のパケットを組立て、別々の無線送信装置を介してほぼ同時に送信すること、のいずれであっても良いし、これらを組合せても良い。また、パケット送信部216は、送信失敗の頻度、又は、通信回線の回線速度を算出して、シャドウィング検知部214に出力する。これは、後述するように、シャドウィング検知部214により、基地局との通信に支障が生じているか否かを判定するためである。
 パケット受信部218は、基地局104から送信されたデータを受信する。パケット受信部218は、パケット送信部216から送信したパケットデータが送信先で受信されたか否かを、送信先から送信される受信確認情報を受信することにより判定できる。例えば、TCP/IPプロトコルであれば、ACK、及び、確認応答番号(次に送信すべきデータの先頭を表す(どこまでデータを受信できたかを表す))を受信することにより可能である。所定時間内にパケット受信部218が受信確認情報を受信できなければ、送信に失敗したとして、パケット送信部216は該当するパケットデータを再送信する。
 シャドウィング検知部214は、パケット送信部216から入力される送信失敗の頻度、又は、通信回線の回線速度から、シャドウィングが発生しているか否かを判定し、シャドウィングが発生していると判定した場合、所定の指示(以下、バッファ開始指示という)をバッファ入力制御部202に出力する。バッファ入力制御部202は、バッファ開始指示が入力されると、センサデータ収集部200から入力されるセンサデータの出力先を、パケット送信部216からバッファ部204に変更する。これにより、上記したように第1バッファ206、第2バッファ208及び第3バッファ210によりセンサデータのバッファリング(記憶)が実行される。
 シャドウィング検知部214は、発生していたシャドウィングが解消したと判定した場合、所定の指示(以下、送信開始指示という)をバッファ入力制御部202及びバッファ出力制御部212に出力する。バッファ入力制御部202は、送信開始指示が入力されると、センサデータ収集部200から入力されるセンサデータの出力を停止する。バッファ出力制御部212は、送信開始指示が入力されると、上記したように、第1バッファ206、第2バッファ208及び第3バッファ210からデータを並列して読出し、読出したデータに、対応する分類情報を付加してパケット送信部216に出力する。バッファ出力制御部212は、全バッファデータの出力が完了すると、出力完了情報をシャドウィング検知部214に出力し、出力完了情報が入力されたシャドウィング検知部214は、所定の指示(以下、バッファ終了指示という)をバッファ入力制御部202に出力する。バッファ入力制御部202は、バッファ終了指示が入力されると、センサデータ収集部200から入力されるセンサデータの出力先を、バッファ部204からパケット送信部216に戻す。
 これにより、車載装置120は、シャドウィングが発生している期間、センサデータをバッファし、シャドウィングが解消すれば、バッファしていたセンサデータを並列して送信できる。このとき、バッファしていたセンサデータは、遅延時間の短いものから優先して送信されるので、後述するように、サーバ102は、受信したセンサデータを有効に利用することができる。
 センサデータ収集部200の機能は図2のI/F部124により実現される。パケット送信部216及びパケット受信部218の機能は、通信部126により実現される。バッファ入力制御部202、バッファ部204、バッファ出力制御部212及びシャドウィング検知部214の機能は、制御部130及びメモリ128により実現される。なお、車載装置120の各機能は、専用ハードウェア(回路基板、半導体集積回路(ASIC等)等)を用いて実現されてもよい。例えば、図4の1点鎖線で囲まれたバッファ入力制御部202、バッファ部204、バッファ出力制御部212及びシャドウィング検知部214の機能を1又は複数の半導体集積回路で実現し、制御部130及びメモリ128とは別の構成として車載装置120に搭載してもよい。
  [サーバの機能的構成]
 図6を参照して、サーバ102の機能について説明する。サーバ102は、パケットデータを受信するパケット受信部240と、パケット受信部240の出力データを所定の条件にしたがって分類し、データベース246に入力するフィルタ部244と、データベース246に記憶されたデータに対して所定の処理を実行する処理部254と、処理部254の処理結果を運転支援情報として送信するパケット送信部242とを含む。
 データベース246は、リアルタイムデータ領域248、準リアルタイムデータ領域250及び非リアルタイムデータ領域252を含む。データベース246は、メモリ142(図3参照)により実現される。リアルタイムデータ領域248、準リアルタイムデータ領域250及び非リアルタイムデータ領域252は、遅延時間に応じたセンサデータを記憶するための領域である。リアルタイムデータ領域248は、リアルタイムのセンサデータを記憶するための領域である。準リアルタイムデータ領域250は、準リアルタイムのセンサデータを記憶するための領域である。非リアルタイムデータ領域252は、非リアルタイムのセンサデータを記憶するための領域である。
 パケット受信部240は、車両106の車載装置120等の車載装置からセンサデータを受信する。パケット受信部240は、車載装置以外に、街頭監視カメラ等の固定設置されたインフラセンサからもセンサデータを受信する。インフラセンサには、例えば、イメージセンサ(カメラ等)、レーザセンサ(LiDAR等)、ミリ波レーダ等が含まれる。パケット受信部240は、車載装置120から送信されたセンサデータを含むパケットデータを受信すると、センサデータと、それに付加された情報(以下、付加情報ともいう)があれば付加情報とを取出して、フィルタ部244に出力する。パケット受信部240の機能は、図3の通信部144により実現される。ここで付加情報は、上記したセンサデータ取得時刻、車両位置及び分類情報(センサデータの遅延時間の分類を表す情報)である。
 フィルタ部244は、入力されるセンサデータ、センサデータ取得時刻及び車両位置を、分類情報に応じて、リアルタイムデータ領域248、準リアルタイムデータ領域250及び非リアルタイムデータ領域252のいずれかに記憶する。分類情報は、車載装置120において、発生したシャドウィングが解消したときに送信されるセンサデータ(バッファされていたデータ)にのみ付加されており、通常時に送信されるセンサデータには付加されていない。また、インフラセンサから受信したセンサデータにも分類情報は付加されていない。フィルタ部244は、分類情報が付加されていないセンサデータを、リアルタイム性の高いデータとしてリアルタイムデータ領域248に出力する。
 なお、時間経過にしたがって、リアルタイムデータ領域248、準リアルタイムデータ領域250、非リアルタイムデータ領域252に記憶されているデータのリアルタイム性は変化するので、適宜、相互間でのデータ移動、及びデータ削除が行なわれ、リアルタイムデータ領域248、準リアルタイムデータ領域250及び非リアルタイムデータ領域252の各々に記憶されているセンサデータのリアルタイム性が維持される。例えば、時間経過に応じて、センサデータ取得時刻を参照し、リアルタイムデータ領域248に記憶されたデータのうち、リアルタイムデータに該当しなくなったデータは、準リアルタイムデータ領域250に移動される。同様に、準リアルタイムデータ領域250に記憶されたデータのうち、準リアルタイムデータに該当しなくなったデータは、非リアルタイムデータ領域252に移動される。非リアルタイムデータ領域252に記憶されたデータのうち、非リアルタイムに該当しなくなったデータは削除される。
 処理部254は、所定のタイミングで、リアルタイムデータ領域248、準リアルタイムデータ領域250及び非リアルタイムデータ領域252からセンサデータを読出し、読出したセンサデータの遅延時間に応じた処理を実行する。処理部254は、例えば、リアルタイムデータ領域248から読出したセンサデータに対して、動体検出処理を行ない、検出された動体の属性(種類(人、車両等)、位置、大きさ等)を特定し、運転支援情報を生成する、交通状況マップに反映する等の処理を行なう。処理部254は、リアルタイムデータ領域248及び準リアルタイムデータ領域250から読出したセンサデータを、検出対象の将来の行動を推定する処理に用いる。例えば、処理部254は、リアルタイムデータ領域248のセンサデータから検出された動体の詳細な属性(例えば、歩行者が検出された場合、それがどのような歩行者であるか(例えば、子供、老人、歩行中、歩行速度、歩行方向、停止中等))を予測する。準リアルタイムデータ領域250から読出したセンサデータは、行動推定処理における過去サンプルとして用いられ得る。処理部254は、非リアルタイムデータ領域252から読出したセンサデータを、例えば、統計分析等の統計処理の対象データ、推定モデルを構築するための学習データ等に用いる。処理部254の処理結果は、データベース246の解析結果領域256に記憶され、適宜パケット送信部242により読出され、運転支援情報として車載装置に送信される。
 このように、サーバ102は、車載装置120等の車載装置及びインフラセンサから受信したセンサデータをリアルタイム性に応じて分類して記憶し、記憶されているセンサデータを、そのリアルタイム性に応じて利用できる。
  [動作]
 図7及び図8を参照して、車載装置120及びサーバ102の動作を説明することにより、運転支援システム100の動作を説明する。図7に示した処理は、制御部130が、所定のプログラムをメモリ128から読出して実行することにより実現される。図8に示した処理は、制御部140が、所定のプログラムをメモリ142から読出して実行することにより実現される。
  [車載装置の動作]
 図7を参照して、ステップ300において、制御部130は、センサ機器122からセンサデータを取得する。
 ステップ302において、制御部130は、シャドウィングが発生しているか否かを判定する。シャドウィングの発生は、上記した送信失敗の頻度の増大、回線速度の低下の他、受信信号レベルの低下、サーバ102との通信切断等によっても判定できる。これは、図4のシャドウィング検知部214の機能に対応する。シャドウィングが発生していると判定された場合、制御はステップ304に移行する。そうでなければ、制御はステップ306に移行する。
 ステップ304において、制御部130は、300で取得したセンサデータのバッファを開始する。これは、図4のバッファ入力制御部202及びバッファ部204の機能に対応する。例えば、センサデータは、その遅延時間に応じて、リアルタイムデータ、準リアルタイムデータ、非リアルタイムデータに区分されてバッファされる。その後、制御はステップ308に移行する。
 一方、ステップ302でシャドウィングが発生していないと判定された場合、ステップ306において、ステップ300で取得したセンサデータをサーバ102に送信する。これは、図4のバッファ入力制御部202及びパケット送信部216の機能に対応する。
 ステップ308において、制御部130は、シャドウィングが解消したか否かを判定する。解消したと判定された場合、制御はステップ312に移行する。そうでなければ制御はステップ310に移行する。
 ステップ310において、制御部130は、センサデータを取得し、取得したセンサデータを、上記のようにバッファする。その後、制御はステップ308に戻る。これにより、シャドウィングが生じている間、センサデータはバッファされ、送信されない。
 一方、シャドウィングが解消すると、ステップ312において、制御部130は、バッファ処理を中止し、バッファされたデータをサーバ102に送信する処理を開始する。これは、図4のバッファ出力制御部212及びパケット送信部216の機能に対応する。リアルタイムデータ、準リアルタイムデータ、非リアルタイムデータに区分されてバッファされていたデータは、並列アップロードされる。このとき、リアルタイム性が高いものを優先して送信する。その後、制御はステップ314に移行する。
 ステップ314において、制御部130は、終了が指示されているか否かを判定する。終了の指示は、例えば車載装置120の電源がオフされることにより成される。終了が指示されていると判定されると、このプログラムは終了する。そうでなければ、制御はステップ300に戻る。
 以上により、車載装置120は、シャドウィングが発生していなければ、センサデータを受信してサーバ102に送信する処理を繰返す。一旦シャドウィングが発生すれば、車載装置120は、シャドウィングが発生している期間、センサデータをバッファし、シャドウィングが解消すれば、バッファしていたセンサデータを並列アップロードできる。このとき、バッファしていたセンサデータは、遅延時間の短いものから優先して送信される。したがって、シャドウィング発生時に、データの再送信を繰返す無駄な処理を抑制できる。また、シャドウィングが解消すれば、リアルタイム性の高いセンサデータを優先的に送信するので、サーバ102は、受信したデータを有効に利用することができ、受信したデータが利用されずに破棄されることを抑制できる。
 [サーバの動作]
 図8を参照して、ステップ400において、制御部140は、データを受信したか否かを判定する。受信したと判定された場合、制御はステップ402に移行する。そうでなければ、制御はステップ412に移行する。
 ステップ402において、制御部140は、ステップ400で受信したデータがセンサデータであるか否かを判定する。例えば、車載装置120からセンサデータをパケット化して送信するときに、パケットヘッダに、センサデータを含むことを示す情報を含めて送信すればよい。制御部140は、受信したパケットヘッダにその情報が含まれていれば、センサデータを受信したと判定できる。受信したと判定された場合、制御はステップ406に移行する。そうでなければ、制御はステップ404に移行する。
 ステップ404において、制御部140は、受信したデータに応じて、該当する処理を実行する。その後、制御はステップ412に移行する。
 ステップ406において、制御部140は、ステップ400で受信したデータに分類情報(センサデータのリアルタイム性を表す情報)が含まれているか否かを判定する。含まれていると判定された場合、制御はステップ408に移行する。そうでなければ、制御はステップ410に移行する。
 ステップ408において、制御部140は、ステップ400で受信したセンサデータを、受信した分類情報に対応するメモリ142の該当領域に記憶する。これは、図6のフィルタ部244及びデータベース246の機能に対応する。センサデータは、その分類情報に応じて、リアルタイムデータ領域248、準リアルタイムデータ領域250又は非リアルタイムデータ領域252に記憶される。
 ステップ410において、制御部140は、ステップ400で受信したセンサデータ(分類情報を含まない)を、メモリ142のリアルタイムデータを記憶する領域(図6のリアルタイムデータ領域248)に記憶する。その後、制御はステップ412に移行する。
 ステップ412において、制御部140は、記憶しているセンサデータの解析処理を実行するか否かを判定する。解析処理を実行すると判定された場合、制御はステップ414に移行する。そうでなければ、制御はステップ416に移行する。例えば、制御部140は、新たなセンサデータを受信した場合、解析処理を実行すると判定する。また、解析処理が所定の時間間隔で実行されるように設定されていれば、制御部140は、前回解析処理を実行してからの経過時間により、解析処理を実行するか否かを判定する。
 ステップ414において、制御部140は、メモリ142(図6のリアルタイムデータ領域248、準リアルタイムデータ領域250、非リアルタイムデータ領域252)に記憶されているセンサデータに対して、そのリアルタイム性に応じた解析処理を実行する。これは、図6の処理部254の機能に対応する。制御部140は、解析結果をメモリ142(図6の解析結果領域256)に記憶する。その後制御は、ステップ416に移行する。
 ステップ416において、制御部140は、終了の指示が成されたか否かを判定する。終了の指示は、例えば、実行中のプログラムを停止させる指示により成される。終了の指示を受けると、このプログラムは終了する。終了の指示を受けていなければ、制御は、ステップ400に戻る。
 以上により、サーバ102は、車載装置120等の車載装置及びインフラセンサから受信したセンサデータを、そのリアルタイム性に応じて分類して記憶し、記憶されているセンサデータを、そのリアルタイム性に応じて利用できる。特に、車載装置120においてシャドウィングが発生して所定の期間送信できず、シャドウィングが解消した後に送信されるセンサデータ(バッファデータ)を、破棄することなく、そのリアルタイム性に応じて分類して記憶し、そのリアルタイム性に応じて有効に利用できる。
 上記では、シャドウィングが発生したときに、センサデータをバッファリングする場合を説明したが、これに限定されない。基地局のサービスエリア内において、シャドウィング以外の原因で、一時的に正常な通信ができない現象が発生したときに、センサデータをバッファリングし、正常に通信可能になれば、バッファデータを並列アップロードすればよい。
  (第1変形例)
 上記では、シャドウィングが発生したときに車載装置がセンサデータをバッファするためのバッファ容量が固定である場合を説明したが、これに限定されない。バッファ容量は、適宜変更されてもよい。第1変形例では、車載装置は、サーバから送信されるパラメータにしたがって、バッファ容量を変更する。
  [車載装置の機能的構成]
 第1変形例の車載装置のハードウェア構成は図2と同じである。図9を参照して、車両430は第1変形例に係る車載装置150を含む。車載装置150の機能的構成において、図4の車載装置120と異なる点は、図4のセンサデータ処理部190に代えて、センサデータ処理部190にバッファ容量決定部220が追加されたセンサデータ処理部440を含んでいることだけである。バッファ容量決定部220は、後述するように、サーバ102から送信されてパケット受信部218により受信されるパラメータを、パケット受信部218から入力され、パケット送信部216から入力される情報(回線速度)とパラメータとから各バッファの容量を決定する。車載装置150において、車載装置120(図4)の構成要素と同じ符号を付した構成要素は、車載装置120の構成要素と同じ機能を有しているので、重複説明を繰返さない。主として異なる点に関して説明する。
 ここでは、車載装置150が動作を開始した時点では、第1バッファ206、第2バッファ208及び第3バッファ210の各々のバッファ容量は予め設定されているとする。車載装置150は、車載装置120と同様に、シャドウィングが発生すると、センサデータ収集部200から出力されるセンサデータの送信を中止し、バッファ部204へのバッファ処理を開始する(バッファ入力制御部202の出力先がパケット送信部216からバッファ部204に変更される)。その後、シャドウィングが解消すると、第1バッファ206、第2バッファ208及び第3バッファ210にバッファされていたデータを並列に読出し、パケット送信部216から送信する(並列アップロード)。このとき、第1バッファ206、第2バッファ208及び第3バッファ210のデータは、リアルタイム性に応じた優先度(第1バッファ206、第2バッファ208及び第3バッファ210の順で優先度が低くなる)で、並列に読出され(バッファ出力制御部212の機能)、送信される。このとき、パケット送信部216から送信される各パケットデータには、送信時刻を表す情報が含まれている。
 これにより、サーバ102は、シャドウィングが発生していた期間にバッファされていたデータ(センサデータ)を受信して、有効に活用する。並列アップロードが行われているとき、サーバ102は、後述するように、回線速度と、受信したデータの送信時刻から取得時刻までの時間差(以下、伝送遅延時間という)と、受信したデータ(センサデータ)の解析処理に要した時間(以下、処理遅延時間という)とを測定(算出)する。測定された回線速度は、量子化されて記憶される。伝送遅延時間、及び処理遅延時間の算出は、上記した分類情報(センサデータの遅延時間を表す情報)毎に行なわれる。即ち、サーバ102は、車載装置150による並列アップロード時に、並列アップロードの性能評価を行なう。サーバ102は、これらのパラメータを、適当なタイミングで車載装置150に送信する。パラメータは、例えば、{回線速度,分類情報,伝送遅延時間,処理遅延時間}の組として送信される。
 サーバ102は、各サービスの許容遅延時間をも送信する。センサデータを使用するサービスは、そのセンサデータのリアルタイム性に応じて異なる。例えば、運転支援情報の生成には、リアルタイムデータを使用できるが、非リアルタイムデータを使用することはできない。許容遅延時間を超える遅延時間のセンサデータは、対応するサービスでは使用されない。許容遅延時間は、分類情報毎に設定される。なお、許容遅延時間は、サーバと車載装置との間で共有されていればよく、許容遅延時間が変化するものでなければ、予め仕様として規定されていてもよく、例えば、車載装置において初期設定されていてもよい。許容遅延時間が変化するとしてもその周期が比較的長い場合には、許容遅延時間は、パラメータの送信とは別に送信されてもよい。許容遅延時間が変化し、その周期が比較的短い場合には、パラメータの送信と同時に許容遅延時間を送信するようにしてもよい。
 サーバ102から送信されるパラメータ及び許容遅延時間は、パケット受信部218により受信され、バッファ容量決定部220に出力される。バッファ容量決定部220は、入力されるパラメータを記憶する。また、パケット送信部216は、適宜、正常通信できている状態の回線速度を測定し、バッファ容量決定部220に出力する。バッファ容量決定部220は、パケット送信部216から入力される回線速度の平均値を算出して記憶する。
 バッファ容量決定部220は、記憶した回線速度の平均値及びパラメータを用いて、第1バッファ206、第2バッファ208及び第3バッファ210の各バッファ容量を、以下に示すようにして決定する。図10に、特定のリアルタイム性(リアルタイム、準リアルタイム、又は非リアルタイム)のセンサデータに関して、バッファ開始時刻(バッファ処理を開始した時刻)tsから、処理完了時刻(サーバ102によりバッファデータが受信され解析が完了する時刻)teまでの間における各処理に要する時間を示す。図10において、バッファ時間T1は、特定のリアルタイム性の全バッファデータBの記憶に要した時間を意味する。バッファ入力制御部202から単位時間当たりに出力されるセンサデータ量をSとし、センサデータに付加されるデータ(センサデータ取得時刻及び車両位置)は小さいので無視すると、B=T1×Sとなる。全バッファデータの送出所要時間T2は、特定のリアルタイム性の全バッファデータを読出してから、パケット化してパケット送信部216から送信するまでに要する時間を意味する。即ち、全バッファデータの送出所要時間T2は、車載装置150において、分類毎のバッファデータ(センサデータ、センサデータ取得時刻及び車両位置)を処理する速度(以下、スループットという)Th(例えばbps単位)を用いて、T2=B/Th=T1×S/Thで表される。伝送遅延時間T3は、特定のリアルタイム性の全バッファデータが、車載装置150から送信されてサーバ102により受信されるまでの時間を意味する。処理遅延時間T4は、サーバ102が特定のリアルタイム性のセンサデータを解析するのに要する時間を意味する。これらのうち、伝送遅延時間T3、処理遅延時間T4は上記したようにサーバ102により測定される。一方、バッファ時間T1及びスループットThは、車載装置150において測定される。これらの時間は、リアルタイム性(リアルタイム、準リアルタイム又は非リアルタイム)に応じて異なる。バッファ時間T1は、リアルタイムデータ(第1バッファ206のバッファデータ)、準リアルタイムデータ(第2バッファ208のバッファデータ)、非リアルタイムデータ(第3バッファ210のバッファデータ)の順で大きくなる。スループットTh、伝送遅延時間T3及び処理遅延時間T4に関しても同様である。
 図10には、2種類の許容遅延時間TA1及びTA2を示す。例えば、許容遅延時間TA1は、準リアルタイムデータを利用するサービスに関するものであり、許容遅延時間TA2は、リアルタイムデータを利用するサービスに関するものである。許容遅延時間TA1の場合、車載装置150においてバッファされたデータは全てサーバ102により有効に利用され得る。しかし、許容遅延時間TA2の場合には、期間ΔTにバッファされたセンサデータは、有効に使用されない(対応するサービスでは使用されない)。即ち、ΔTの期間は無駄な時間である。ΔTは、バッファ容量に直接対応するものではなく、T1に含まれる無駄なバッファ時間ΔT1、T2に含まれるΔT1に記憶されるデータ(以下、無駄なバッファデータという)の送出処理時間、T3に含まれる無駄なバッファデータの伝送時間、T4に含まれる無駄なバッファデータの処理時間の合計である。したがって、許容遅延時間をTAとすると、T1+T2+T3+T4=T1(1+S/Th)+T3+T4≦TA、即ち、T1≦(TA-T3-T4)/(1+S/Th)となるように、バッファ時間T1の上限値((TA-T3-T4)/(1+S/Th))を設定してもよい。バッファ時間T1の上限値に対応するバッファ容量は、バッファ時間T1及び単位時間当たりのセンサデータ量Sの積((TA-T3-T4)×S/(1+S/Th))により算出できる。
 バッファ容量決定部220は、記憶しているパラメータに含まれる回線速度(量子化データ)のうち、パケット送信部216から取得した回線速度から算出しておいた平均値に対応する回線速度(量子化データ)を特定し、特定された回線速度(量子化データ)に対応する{分類情報,伝送遅延時間,処理遅延時間}の組を特定する。そして、バッファ容量決定部220は、特定された組における分類情報(リアルタイム性に対応)を1つ特定し、それに対応する伝送遅延時間(T3)、処理遅延時間(T4)及び許容遅延時間(TA)を、(TA-T3-T4)×S/(1+S/Th)に代入して、バッファ容量の上限値を算出する。バッファ容量決定部220は、分類情報の数だけこれを繰返し、分類情報毎のバッファ容量の上限値を決定する。
 バッファ容量決定部220は、決定した分類情報毎のバッファ容量の上限値を、バッファ入力制御部202に出力する。これを受けて、バッファ入力制御部202は、シャドウィングが発生していないときに、シャドウィングが発生したときのために、予め各分類情報に対応する第1バッファ206、第2バッファ208及び第3バッファ210のバッファ容量をメモリ128上に確保する。
 バッファ容量の算出に使用した、パケット送信部216からバッファ容量決定部220に出力される回線速度は変化する。一旦シャドウィングが発生した後、シャドウィングが解消したときの回線速度は、シャドウィングが発生する少し前の回線速度とほぼ同じであると推定できる。したがって、サーバ102から、繰返しパラメータが送信され、バッファ容量決定部220が、パラメータを受信する度に、パケット送信部216から取得し、算出しておいた回線速度の平均値(シャドウィング解消後の回線速度の推定値)を用いてバッファ容量の上限値を決定すれば、シャドウィングが発生したときのために、適切なバッファ容量を確保できる。確保されたバッファ容量は、リアルタイム性(分類情報)に応じた適切なバッファ容量であり、サーバ102に送信された場合に、利用されずに破棄されるデータまでバッファする無駄を抑制できる。
 車載装置150のバッファ容量決定部220の機能は、制御部130(図2)が、所定のプログラムをメモリ128から読出して実行することにより実現され得る。例えば、制御部130は、図7に示したプログラムと並行して、バッファ容量決定部220の機能を実現するためのプログラムを実行すればよい。
 上記では、一旦シャドウィングが発生した後、シャドウィングが解消したときの回線速度として、シャドウィングが発生する前の回線速度の平均値を使用したが、これに限定されない。シャドウィングが解消したときの回線速度の推定値であればよく、別の方法で推定された値を用いてもよい。例えば、過去の走行位置と対応する回線速度とを記憶しておき、現在の車両の走行位置から、シャドウィング解消時の回線速度を推定してもよい。
  [サーバの機能的構成]
 第1変形例のサーバのハードウェア構成は図3と同じである。図11を参照して、第1変形例に係るサーバ152の機能的構成について説明する。サーバ152の構成において、図6のサーバ102と異なる点は、パラメータ生成部258が追加されていることだけである。パラメータ生成部258は、上記したように、車載装置150による並列アップロード時に、パラメータを算出する。サーバ152において、サーバ102(図6)の構成要素と同じ符号を付した構成要素は、サーバ102の構成要素と同じ機能を有しているので、重複説明を繰返さない。主として異なる点に関して説明する。
 サーバ152は、サーバ102と同様に、車載装置150等の車載装置及びインフラセンサ等からセンサデータを受信し、受信したセンサデータのリアルタイム性に応じて、リアルタイムデータ領域248、準リアルタイムデータ領域250又は非リアルタイムデータ領域252に記憶する。その後、サーバ102は、適宜、サービスに応じてリアルタイムデータ領域248、準リアルタイムデータ領域250及び非リアルタイムデータ領域252からセンサデータを読出し、解析し、解析結果を解析結果領域256に記憶する。
 サーバ152においては、サーバ102と異なり、パケット受信部240は、車載装置150による並列アップロードで、バッファされたデータを含むパケットデータを受信すると、そのパケットデータをパラメータ生成部258に出力する。また、パケット受信部240は、このときの回線速度の情報をパラメータ生成部258に出力する。パラメータ生成部258は、入力される回線速度を量子化して記憶する。
 パラメータ生成部258に入力されるパケットデータには、センサデータ、センサデータ取得時刻、車両位置、分類情報及び送信時刻が含まれている。したがって、パラメータ生成部258は、分類情報毎に伝送遅延時間を測定(算出)できる。パラメータ生成部258は、パケットデータが入力される度に伝送遅延時間を測定し、該当する分類情報に対応させて記憶する。伝送遅延時間は、例えば、分類情報毎に、各パケットの伝送遅延時間を求め、並列アップロードが終われば、それらの平均値として算出できる。並列アップロードで送信されたパケットデータに関して、これを繰返すと、回線速度(量子化値)毎に、{分類情報,伝送遅延時間}の組を生成することができる。
 処理部254は、サーバ152においてはサーバ102と異なり、リアルタイム性毎(分類情報毎)の処理遅延時間(解析処理に要した時間)を算出し、処理遅延時間を分類情報と対応させて、パラメータ生成部258に出力する。パラメータ生成部258は、入力される処理遅延時間を、分類情報に対応させて、{回線速度,分類情報,伝送遅延時間,処理遅延時間}の組を生成し、パケット送信部242を介して、車載装置150に送信する。これにより、車載装置150はパラメータを受信する度に、上記したように、発生したシャドウィングが解消したときの回線速度の推定値を用いて、シャドウィングが発生時にセンサデータを記憶するバッファ容量を、予め適切に設定できる。
 パラメータ生成部258の機能は、制御部140(図3)が、所定のプログラムをメモリ142から読出して実行することにより実現され得る。例えば、制御部140は、図8に示したプログラムと並行して、パラメータ生成部258の機能を実現するためのプログラムを実行すればよい。
  (第2変形例)
 上記では、車載装置がシャドウィングの発生を検知したときに、センサデータのバッファ処理を開始する場合を説明したが、これに限定されない。第2変形例では、車載装置におけるセンサデータのバッファ処理の開始条件をサーバから指示し、指示にしたがって車載装置がバッファ処理を開始する。例えば、交通事故等の特定の事態が生じている道路地図上の範囲(以下、エリアという)、インフラセンサの検出範囲外のエリア等において取得されるセンサデータは、サーバによるサービス(運転支援情報の提供等)にとって重要である。したがって、サーバは、そのようなエリア内を走行している車両の車載装置に対して、シャドウィング発生時にセンサデータのバッファリングを行なわせる。
 第2変形例において、車載装置のハードウェア構成は図2と同じであり、車載装置の機能は図4に示した機能を含む。但し、シャドウィング検知部214は、シャドウィングの検知に加えて、サーバにより指定されたエリア内に車両が位置するか否かをも判定する。サーバのハードウェア構成は図3と同じであり、サーバの機能は図6に示した機能を含む。したがって、適宜、図2~4及び6を参照し、主として上記と異なる機能に関して説明する。
  [車載装置の動作]
 第2変形例に係る車載装置は、図7に代えて、図12のフローチャートに示す処理を実行する。図12のフローチャートは、図7のフローチャートにおいて、ステップ350~ステップ354が追加されたものである。図12において、図7と同じ番号を付したステップの処理は、図7と同じであるので、重複説明を繰返さない。主として異なる点に関して説明する。
 ここでは、サーバ102は、各車両の車載装置に対して、道路地図上の所定範囲を特定するための情報(以下、エリア情報という)を送信し、車載装置120は、受信したエリア情報をメモリ128に記憶しているとする。ステップ350において、制御部130は、記憶しているエリア情報により特定される所定範囲(以下、指定エリアともいう)内に車両106が位置しているか否かを判定する。指定エリア内に位置していると判定された場合、制御はステップ302に移行する。そうでなければ、制御はステップ352に移行する。指定エリア内に位置しているか否かの判定は、GPSにより取得した車両106の位置情報を用いて行なうことができる。
 指定エリア内に位置していると判定された場合、ステップ302~312が実行され、上記したように、シャドウィングが発生していれば、その間センサデータはバッファされ、シャドウィングが解消すると、バッファデータは並列アップロードされる。
 一方、指定エリア内に位置しないと判定された場合、ステップ352において、制御部130は、ステップ302と同様に、シャドウィング発生の有無を判定する。シャドウィングが発生していないと判定された場合、制御はステップ306に移行し、センサデータの送信が行なわれる。シャドウィングが発生していると判定された場合、制御はステップ354に移行する。ステップ354において、制御部130は、センサデータを送信もバッファもせずに、破棄する。
 これにより、車両102が指定エリア内を走行していれば、車両102に搭載されている車載装置120は、シャドウィングが発生している間、センサデータをバッファし、シャドウィングが解消すれば、バッファデータをサーバ102に送信する。車両102が指定エリア外を走行していれば、車両102に搭載されている車載装置120は、シャドウィングが発生すれば、センサデータを破棄し、センサデータの再送信も、センサデータのバッファも行なわない。したがって、サーバ102は、提供するサービスにとって重要なセンサデータを取得でき、車載装置120は、サーバ102にとってそれ程重要ではないセンサデータの再送信を抑制できる。
 図12では、車両106が指定エリア内に位置するか否かを判定した後に、シャドウィング発生の有無を判定しているが、これに限定されない。例えば、シャドウィングの発生の有無を判定し、シャドウィングが発生している場合に、車両106が指定エリア内に位置するか否かを判定してもよい。また、バッファ処理の開始条件は、エリア情報で特定される指定エリア内に位置することに限定されず、それ以外の条件であってもよい。
 (第2実施形態)
 [状態遷移]
 この開示の第2実施形態に係る車載装置の状態遷移を図14に示す。図14を参照して、この実施形態に係る車載装置の状態は、センサデータを収集し、サーバ102にアップロードする処理を繰返す通常状態450と、通常状態450において車載装置からサーバ102へのアップロードのスループット(回線速度)が所定のしきい値以下となったときに通常状態450から遷移する、センサデータを収集し、サーバ102にアップロードせずバッファリングするバッファリング状態452と、車載装置がバッファリング状態452にあるときに、サーバ102との回線速度がしきい値より大きな値に復帰したときに、バッファリング状態452においてバッファリングされたセンサデータをサーバ102に順次アップロードするバッファ送信状態454とを含む。バッファリング状態452においてバッファからのアップロードが完了すると、状態は通常状態450に戻る。バッファリング状態452においてスループットがしきい値以下になると、状態はバッファリング状態452に戻る。
 以上の状態遷移は、第1実施形態の場合と同様である。この第2実施形態では、バッファリング状態452の状態が所定時間以上継続したとき(バッファリング期間が満了したとき)に、バッファリングしたデータを、低下した回線速度でもサーバ102に継続してアップロードできるような小さなサイズのサブセットに変換し、サーバ102にアップロードする処理を繰返すサブセット送信状態456をさらに含む。車載装置がサブセット送信状態456にあるときに回線速度がしきい値より大きな値に復帰したときには、車載装置の状態はバッファ送信状態454に遷移する。車載装置の状態とスループットの変化とに追随して、車載装置の状態が変化する。車載装置の4個の状態をあらかじめ適切に設定しておくことで、シャドウィング等が発生したときも適切にセンサデータを処理できる。送信のスループットに応じて、状態との組合せで適宜状態遷移させることで、センサデータを外部装置に送信する処理と、外部装置に送信せずバッファに蓄積する処理と、バッファに蓄積されたセンサデータを外部に送信する処理とを状態遷移により切替えて実行できる。
 第1実施形態では回線速度が低下したときには、車載装置は、サーバ102へのセンサデータのアップロードを中断し、バッファリングする。車載装置は、回線速度が回復したときにバッファされたセンサデータをサーバ102に順次アップロードする。
 しかし、バッファリング用のメモリ容量にも限界があるため、バッファリング時間が長期になると、センサデータをそれ以上バッファリングすることができなくなる。古いデータに上書きすればメモリ容量は確保できるが、サーバ102にセンサデータ等をアップロードしない期間があまり長期になるとサーバ102が提供するサービスの内容に影響が及ぶ可能性がある。そこでこの実施形態では、センサデータのバッファリングを開始してから所定時間が経過すると、バッファリングされたセンサデータを、よりサイズの小さなサブセットに変換し、サーバ102に順次アップロードする。ここでのバッファリング期間は、バッファ部のバッファ長及びセンサデータ長により見積もるようにすることも1方法である。なお、このときのサブデータセットのサイズは、固定でもよいが、利用できる回線速度によって変化させてもよい。
 以下に述べる第2実施形態では、バッファリング状態452からバッファ送信状態454に車載装置の状態が遷移したときにも、センサデータのバッファリングは継続して行う。また第1実施形態とは異なり、バッファ送信状態454ではバッファリングされた3種類のセンサデータとともに、センサから収集されたセンサデータも同時にサーバ102にアップロードする。
 そのために必要な構成及びプログラム等について以下に説明する。
 [車載装置の構成]
 図15を参照して、この第2実施形態に係る、車両480に搭載される車載装置490は、図4に示す第1実施形態に係る車載装置150に変更を加えたものである。図15を参照して、車載装置490は、図4のセンサデータ処理部190に代えて、センサデータ処理部190と同様にバッファリング機能を備えながら、バッファリング期間終了後には、バッファリングされていたセンサデータを低い回線速度でもアップロードできるような小さなデータ(サブデータセット)に変換し、パケット送信部216を介してサーバ102にアップロードする処理を行うセンサデータ処理部492を含むものである。
 センサデータ処理部492は、図4のセンサデータ処理部190において、回線速度及びバッファリング期間に基づいてセンサデータ処理部492の状態を図14にしたがって遷移させるための状態制御部510と、状態制御部510が使用する、センサデータ処理部492の状態を示すフラグ514と、状態制御部510がバッファリング期間を計測するためのタイマ512と、バッファ入力制御部202の出力に接続され、パケット送信部216に与えられるパケットを一時保持しておくための、FIFO(先入れ先出し)バッファである送信用バッファ518とを追加し、図4のバッファ部204に代えて、リングバッファからなるバッファ部500を含む。バッファ部500はバッファ部204とは異なる構成であるが、後述するようにその機能及び使用方法はバッファ部204と同じである。
 センサデータ処理部492はさらに、図4のバッファ出力制御部212に代えて、状態制御部510及びシャドウィング検知部214に接続され、図14の状態遷移にしたがってサーバ102にアップロードするデータをバッファ部500から読出すためのバッファ出力制御部516と、状態制御部510から与えられる制御信号に応答し、図14に示すサブセット送信状態456において、バッファ出力制御部516がバッファ部500から読出すセンサデータを、よりデータ容量の小さなサブデータセットに変換するためのデータ変換部504と、いずれも状態制御部510からの制御信号により制御され、バッファリング状態452ではバッファ出力制御部516の出力を選択して送信用バッファ518に与え、サブセット送信状態456ではデータ変換部504の出力を選択して送信用バッファ518に与え、サブセット送信状態456ではバッファ出力制御部516の出力をデータ変換部504に与えてその変換後のデータを送信用バッファ518に与えるためのセレクタ506及び508とを含む。
 図16にバッファ部500の概略図を示す。バッファ部500はリングバッファであって、バッファの先頭アドレスが最後尾のアドレスと関連付けられたメモリである。バッファ部500は、書込アドレスを指す書込ポインタ540と、読出アドレスを示す読出ポインタ542とを持つ。通常、バッファ部500が単なるバッファとして機能するときには、書込ポインタ540により示されるメモリロケーションにデータを書込、バッファ部500を次のアドレスに進める。読出ポインタ542は、バッファ部500に存在するデータの末尾を指している。バッファからデータを読出すときには、読出ポインタ542が指すメモリロケーションからデータを読出して、読出ポインタ542を次のアドレスに進める。
 こうして、バッファ部500を読出ポインタ542が書込ポインタ540を追いかけるようにポインタを制御することで、バッファ部500をリング状バッファとして用いることができる。
 この実施形態では、書込ポインタ540が進む方向を書込ポインタ540の前方、書込ポインタ540が進む方向と逆の方向を書込ポインタ540の後方と呼ぶことにする。すると、書込ポインタ540の後方に、書込ポインタ540に近い位置から順に領域550、552及び554を考えることができる。これらをそれぞれ図5に示す第1バッファ206、第2バッファ208及び第3バッファ210として使用できる。
 バッファ部500からのデータの読出しには、領域550、552及び554にそれぞれ読出ポインタ542、544及び546を用いる。これらポインタは、その領域にデータがフルに格納されている場合には各領域の末尾を指し、その領域の途中までデータが存在している場合にはそのデータを格納したメモリロケーションを指す。その領域にデータが存在しない場合にはポインタの値は例えばヌルに設定される。
 [センサデータ処理部492のプログラム構成]
 図17は、コンピュータを、センサデータ処理部492の状態を制御するように機能させるためのプログラムの制御構造を示す。このプログラムは、一定の間隔で繰返し起動される。
 図17を参照して、このプログラムは、サーバ102との間のスループットを測定するステップ560と、ステップ560で測定されたスループットがしきい値より大きいか否かにより制御の流れを分岐させるステップ562と、ステップ562の判定が否定のときに、フラグの値が1かどうかにしたがって制御の流れを分岐させるステップ564とを含む。
 このプログラムはさらに、ステップ564の判定が否定のときにフラグの値が2又は0か、それ以外かを判定し、判定にしたがって制御の流れを分岐させるステップ570と、ステップ570の判定が肯定のときに、フラグを1に設定するステップ572と、ステップ572に続き、所定のバッファリング期間にタイマをセットしスタートしてこのプログラムの実行を終了させるステップ574と、ステップ564の判定が肯定のときに、ステップ574でスタートさせたタイマが満了したか否かを判定し、その結果にしたがって制御の流れを分岐させるステップ566と、ステップ566の判定が肯定のときに、フラグを3に設定しこのプログラムの実行を終了するステップ568とを含む。ステップ570の判定が否定のとき、及びステップ566の判定が否定のときにはこのプログラムの実行は終了される。
 このプログラムはさらに、ステップ562の判定が肯定であることに応答してフラグの値が1又は3か否かを判定し、その結果にしたがって制御の流れを分岐させるステップ578と、ステップ578の判定が肯定のときに、フラグを2に設定してこのプログラムの実行を終了するステップ580と、ステップ578の判定が否定であることに応答して、フラグの値が2か否かにしたがって制御の流れを分岐させるステップ582と、ステップ582の判定が肯定であることに応答して、バッファ部500が空か否かにしたがって制御の流れを分岐させるステップ584と、ステップ584の判定が肯定であることに応答して、フラグを0に設定してこのプログラムの実行を終了させるステップ586とを含む。ステップ582の判定が否定のとき、及びステップ584の判定が否定のときにもこのプログラムの実行は終了する。
 図18に、車載装置490がセンサデータを受信したときのセンサデータ処理部492の中のバッファ入力制御部202として機能するようコンピュータを動作させるプログラムの制御構造を示す。このプログラムは、センサデータが受信されるたびに起動される。図18を参照して、このプログラムは、フラグの値が0又は2か、それ以外かを判定し、その結果により制御の流れを分岐させるステップ620と、ステップ620の判定が肯定のときに、受信したセンサデータを図15の送信用バッファ518に格納してこのプログラムの実行を終了するステップ624と、ステップ620の判定が否定のときに、センサデータをバッファ部500に格納して処理を終了するステップ622とを含む。
 図19は、バッファ部500及び送信用バッファ518に格納されたデータに基づき、センサデータ処理部492が図14に示したどの状態にあるかにしたがって適切なデータを読出してパケットを生成しパケット送信部216に与えるよう、コンピュータを動作させるデータ処理プログラムの制御構造を示す。このプログラムは、一定間隔で繰返し起動される。
 図19を参照して、このプログラムは、フラグの値が0、1、2、及び3のいずれであるかにしたがって制御の流れを分岐させるステップ650と、フラグの値が0であるときに、受信したセンサデータを送信用バッファ518から読出してパケット化し、パケット送信部216を介してサーバ102にアップロードしてこのプログラムの実行を終了するステップ652と、フラグの値が2のときに、バッファ部500にバッファリングされたデータ(最高で3種類)をそれぞれ並行して読出し、パケット化してサーバ102にアップロードする処理を実行するステップ656と、フラグの値が3のときに、バッファ部500にバッファリングしたセンサデータ(最高で3種類)をそれぞれ並行して読出すステップ658と、ステップ658で読出したデータをそれぞれより小さなサブセットに変換し、パケット化してサーバ102にアップロードしてこのプログラムの実行を終了するステップ660とを含む。フラグの値が1のときにはこのプログラムでは何も処理されない。
 [車載装置490の動作]
 車載装置490は以下のように動作する。
 車載装置490の起動時にはフラグは0である(通常状態である)ものとする。
 -通常状態-
 図15を参照して、通常状態では、センサデータ収集部200がセンサ機器122からセンサデータを収集し、バッファ入力制御部202に与える。バッファ入力制御部202は、センサデータを受けると、送信用バッファ518にそのセンサデータを与える。パケット送信部216は送信用バッファ518からセンサデータを読出し、パケット化してサーバ102にアップロードする。
 シャドウィングが発生し、パケット送信部216とサーバ102との間のスループットが低下し、しきい値以下となると、状態は図14に示されたとおりバッファリング状態452に遷移する。すなわち、シャドウィング検知部214がパケット送信部216からのデータに基づいてシャドウィングの発生を検知すると、状態制御部510にその情報を与える。状態制御部510はこの信号に応答して、フラグ514の値を1に書き換え、タイマ512をスタートする。
 以上をプログラムの流れで見ると、図18のプログラムが起動されると、ステップ620の判定が肯定となり、ステップ624の処理が実行される。図19に示すプログラムが起動されると、ステップ650の判定により制御はステップ652に移動する。ステップ652で、送信用バッファ518に格納されているセンサデータがパケット送信部216により読出され、サーバ102にアップロードされる。図17のプログラムが起動すると、ステップ560でスループットが測定された後、ステップ562の判定が否定となる。ステップ564の判定は否定なので、ステップ570の判定が行われる。ステップ570の判定は肯定となり、ステップ572でフラグが1に設定され、ステップ574でタイマがスタートされる。
 -バッファリング状態-
 バッファリング状態452では、車載装置490は以下のように動作する。図15を参照して、バッファ入力制御部202は、センサデータ収集部200からセンサデータを受信するとバッファ部500の書込位置にセンサデータを格納し、書込ポインタ540を1進める。スループットが改善しないとこの状態が継続する。タイマ512が満了しないうちにスループットが改善すると、センサデータ処理部492の状態はバッファ送信状態454に遷移する。バッファリング状態452のままタイマ512が満了すると、バッファリング状態452の状態はサブセット送信状態456に遷移する。
 以上をプログラムの制御の流れにしたがって見ると、図17のプログラムが起動された際、ステップ560で測定されたスループットがしきい値以下であれば、ステップ562、564、566が実行される。タイマが満了しない間はステップ568が実行されず、タイマが満了するとステップ568が実行される。この処理が繰返される。一方、図18に示すプログラムが実行されるたびに、制御はステップ620から622に移り、センサデータがバッファ部500に格納される。この処理が繰返される。また、図19に示すプログラムが実行されても、フラグが1なので何も処理されない。データは単にバッファ部500に蓄積されるだけである。
 一方、タイマが満了しないうちにスループットがしきい値より大きくなると、図17のプログラムでステップ562の判定が肯定となり、ステップ578、ステップ580の処理が実行され、フラグが2に設定される。すなわち、センサデータ処理部492の状態はバッファ送信状態454に遷移する。
 また、スループットが改善しないうちにタイマ512が満了すると、図17のプログラムの実行時に、ステップ560、562、564を経てステップ566の判定が肯定となる。その結果、ステップ568が実行され、フラグが3に設定される。すなわち、センサデータ処理部492の状態はサブセット送信状態456(図14)に遷移する。
 -バッファ送信状態-
 バッファ送信状態454では、図15に示すバッファ出力制御部516がバッファ部500の領域550、552、及び554から(もしあれば)それぞれ最も後ろの(最も古い)センサデータを読出し、並行して送信用バッファ518に与える。一方、バッファ入力制御部202はバッファ部500へのセンサデータのバッファリングを停止し、送信用バッファ518にデータを送信する。パケット送信部216は、送信用バッファ518に格納されたセンサデータ(バッファ入力制御部202からのものとバッファ部500からのもの)の双方を順番に読出し、パケット化してサーバ102にアップロードする。バッファからのアップロードが完了すると、状態は通常状態450に戻る。
 これをプログラムの流れから見ると以下のようになる。フラグが2に設定されると、図17のプログラムの実行時には、スループットがしきい値より大きい状態が続くと、ステップ560、562、578、582、584の順に処理が実行される。ステップ584において、バッファ部500が空でないと判定されると、このプログラムの実行は終了する。バッファ部500が空であると判定されるとフラグが0に設定される。すなわちこの場合にはセンサデータ処理部492は通常状態450に戻る。
 もしもバッファ部500が空になる前にスループットが再度しきい値以下になり、その直後に図17のプログラムが実行されると、ステップ560、562、564、570、572、574がこの順で実行される。この結果、フラグは1に設定され(センサデータ処理部492の状態はバッファリング状態452に戻り)、タイマがスタートする。
 -サブセット送信状態-
 サブセット送信状態456では、図15に示すセンサデータ処理部492は以下のように動作する。バッファ入力制御部202はバッファ部500にセンサデータを格納する。バッファ出力制御部516は、バッファリング状態452のときと同様、バッファ部500から最大で3種類のセンサデータを並行して読出し、セレクタ506に与える。セレクタ506は、サブセット送信状態456ではこのセンサデータをデータ変換部504に与える。データ変換部504はこのセンサデータを、よりサイズの小さいサブデータセットに変換し、それぞれセレクタ508に与える。セレクタ508はこのサブデータセットを送信用バッファ518に格納する。パケット送信部216がこのサブデータセットを送信用バッファ518から読出し、パケット化してサーバ102にアップロードする。
 この状態では、センサデータよりも小さいサイズのサブデータセットをサーバ102にアップロードするので、スループットが低くても車載装置490からセンサデータをサーバ102にアップロードできる。もちろんアップロードできるデータサイズが限定されるため、サーバ102にとって有用なデータのみをサブデータセットとして選択する。
 この状態でスループットがしきい値より大きくなると、センサデータ処理部492の状態はバッファ送信状態454に遷移し、バッファリングされたセンサデータがそのままアップロードされる状態になる。
 サブセット送信状態456におけるセンサデータ処理部492の動作を、プログラムの面から述べると以下のようになる。フラグは3である。もしもスループットが改善されないと、図17に示すプログラムが実行されるたびに、ステップ560、562、564、570がこの順で実行される。フラグが3なのでステップ570の判定は否定となり、フラグの値は変化しない。途中でスループットが改善ししきい値より大きくなると、ステップ560、562、578、580の処理が実行され、フラグが2に設定され、センサデータ処理部492の状態はバッファ送信状態454に遷移する。
 一方、フラグの値が3である間、図18のプログラムの実行のたびに、ステップ620、622が実行され、ステップ622でセンサデータがバッファ部500に格納される。同様に図19のプログラムも繰返し実行される。その実行のたびに、ステップ650、658、660の処理が実行され、バッファ部500から読出されたセンサデータがサブデータセットに変換されてサーバ102にアップロードされる。
 フラグが2に変化すると、図18のプログラムではステップ620、624が実行され、新たなセンサデータは送信用バッファ518に格納されることになる。図19のプログラムでは、ステップ650、656が実行され、バッファ部500からセンサデータが読出されてサーバ102にアップロードされる。この結果、バッファリングされていたデータが無駄になることなくサーバ102で利用され、サーバ102がより充実したサービスを提供できる。
 以上のようにこの実施形態に係る車載装置490では、バッファリング状態が所定時間以上継続すると、バッファリング状態452からサブセット送信状態456に状態が変化する。サブセット送信状態456では、新たなセンサデータがバッファ部500に追加される一方、それより前にバッファ部500に蓄積されていたデータが読出され、よりデータサイズの小さなサブデータセットに変換されてサーバ102にアップロードされる。車載装置490のセンサデータの一部を継続的にサーバ102にアップロードすることができるため、サーバ102では車載装置490を搭載した車両のデータをサービスに組入れることができる。その結果、サーバ102の提供するサービスを高品質にできる。
 (変形例)
 上記した第2実施形態では、バッファリング状態452が所定時間以上継続したときに、車載装置の状態をバッファリング状態452からサブセット送信状態456に変化させた。そして、スループットが改善しない限り、このサブセット送信状態456を維持した。スループットが改善したときには、状態をサブセット送信状態456からバッファ送信状態454に遷移させた。しかしこの開示の実施形態は、そのような形態には限定されない。例えば図20に示すように、状態がサブセット送信状態456であるときにスループットがしきい値より大きくなったら、直ちに通常状態450に状態を遷移させる実施形態も考えられる。こうすることで、サーバ102に対してリアルタイムのデータが送信可能になり、サーバ102はより充実したサービスを提供できる。この場合、サブセット送信状態456から通常状態450への遷移とともに、バッファ部500に蓄積されていたセンサデータは全て破棄することになる。つまり、バッファ部500をクリアする。データが破棄されることによりサーバ102での処理に若干の影響が生じる可能性があるが、時間の経過とともにその影響は小さくなり、やがて消滅する。一方、バッファ部500を
クリアすることにより、シャドウィングが発生したときには、再度、バッファ部500を利用できる。
 さらにまた、上記実施形態では、サブセット送信状態456を一つのみ採用している。しかしこの開示はそのような実施形態には限定されない。スループットに応じてサブセット送信状態456のような状態を複数段階設け、それらの間で状態を遷移させるようにしてもよい。既に述べたように、センサデータをより小さなサブデータセットに変換するとき、そのサブデータセットの大きさは、通信のスループットが大きくなれば大きく、小さくなれば小さくしてもよい。すなわち、変換後のデータサイズの、変換前のデータサイズに対する比は、スループットに対する単調増加関数である。スループットが小さくなれば、送信できるデータサイズは小さくなる。したがって、変換後のデータサイズを、スループットに対する単調増加関数で定めることにより、スループットの大きさにあわせたデータサイズで途切れなくセンサデータを外部装置に送信できる。
 (コンピュータによる実現)
 図21を参照して、車載装置490は実質的にはコンピュータ750を含むプロセッサであって、CPU(Central Processing Unit)770、CPU770とコンピュータ750の各部との間のデータ及び命令の伝送経路となるバス772とを含む。コンピュータ750はさらに、いずれもバス772に接続されたROM(Read-Only Memory)774、RAM(Random Access Memory)776、ハードディスク又はSSD(Solid State Drive)等からなる不揮発性の補助記憶装置778、無線通信により外部との通信を提供する無線通信部780、入出力インターフェイス(I/F)782、ユーザとの音声によるインタラクションを提供するための音声処理I/F790、及びUSBメモリ762が着脱可能で、USBメモリ762とコンピュータ750内の他の各部との通信を可能にするUSBメモリポート784を含む。
 車載装置490はさらに、バス772に接続された、タッチパネル752、表示制御装置を含む液晶等のモニタ754、入出力I/F782に接続された車両の制御のための各種ECU756及びLiDAR等の各種センサ758と、音声処理I/F790に接続されたスピーカ及びマイク760とを含む。ROM774にはコンピュータ750の起動プログラム等が記憶されている。RAM776はCPU770による処理の際に様々な変数を記憶するための作業領域として使用される。
 図17から図19に示す制御構造を持つプログラムは、例えば図21のUSBメモリ762に記憶されて流通し、補助記憶装置778により転送されCPU770により実行される。このプログラムは、実行時にはUSBメモリ762からUSBメモリポート784及びバス772を介してRAM776にロードされる。又はこのプログラムは、補助記憶装置778からバス772を介してRAM776にロードされる。USBメモリ762からUSBメモリポート784を介して補助記憶装置778にプログラムを保存することもできる。
 上記の実施形態及び変形例では、バッファ処理を開始するトリガとして、シャドウィングが発生したとき、又は、サーバから指示された条件を満たすようになったときを挙げたが、これに限定されない。車載装置は、常にセンサデータをバッファしてもよい。即ち、車載装置は、センサデータを取得すると、サーバに送信すると同時にバッファする。そして、車載装置は、発生していたシャドウィングが解消したとき、又は、サーバから指示された条件を満たさなくなったときに、センサデータの送信を停止し、バッファデータの送信を開始するようにしてもよい。
 上記では、車載装置が、サービスで要求される許容遅延時間に応じて、メモリ上に複数のバッファ領域を確保する場合を説明したが、これに限定されない。例えば、図13に示すように、連続するアドレスに1つのバッファ領域を確保してもよい。図13において、アドレスM0~M1のデータ領域、アドレスM2~M3のデータ領域、及びアドレスM4~M5のデータ領域はそれぞれ、図5の第1バッファ206、第2バッファ208及び第3バッファ210に対応する。即ち、バッファ処理において、アドレスM0にセンサデータが書込まれる。記憶されているデータを右側にシフトしてから、次のデータがアドレスM0に書込まれる。アドレスM5に記憶されているデータは、次のデータをアドレスM0に書込む前に、破棄される(アドレスM5の左側のデータがアドレスM5に上書きされる)。並列アップロード時には、例えば、アドレスM1、M3及びM5が読出し開始アドレスとなり、上記した優先度にしたがって、順次左側のアドレスのデータが読出される。
 上記では、1つのセンサに関して、3種類のバッファを備える場合を説明したが、これに限定されない。車両が複数のセンサを備える場合には、車載装置は、センサ毎に3種類のバッファを備えることができる。その場合、センサ毎にバッファ部204(図4)を備えていても、1つのバッファ出力制御部212で、複数のセンサ間のリアルタイム性を考慮して、各バッファの優先度を設定し、並列アップロードしてもよい。
 上記では、センサデータのリアルタイム性に応じて、3種類のバッファを備える場合を説明したが、これに限定されない。センサデータのリアルタイム性に応じて、2種類のバッファを備えていても、4種類以上のバッファを備えてもよい。
 上記では、バッファデータを送信するとき、遅延時間を表す分類情報を付加して送信する場合を説明したが、これに限定されない。分類情報を付加すれば、サーバにおけるセンサデータの分類が容易になるが、センサデータにはセンサデータ取得情報が付加されるので、それを利用してリアルタイム性を判定する場合には、分類情報を付加しなくてもよい。例えば、車載装置及びサーバの時計を合わせておけば、サーバは、現在時刻と、受信したセンサデータのセンサデータ取得時刻とを比較して、受信したセンサデータのリアルタイム性を判定し、該当する領域(例えば、図6のリアルタイムデータ領域248、準リアルタイムデータ領域250及び非リアルタイムデータ領域252)に記憶できる。
 上記の実施形態では、シャドウィングが解消したときに、バッファ入力制御部202がシャドウィング検知部214から送信開始指示を受信したことにより、バッファデータを送信している間、センサデータ収集部200から出力されるセンサデータの送信が中断される場合を説明したが、これに限定されない。バッファデータを送信している間に、センサデータ収集部200から出力されるセンサデータを送信してもよい。そのためには、シャドウィングが解消したときに、シャドウィング検知部214から送信開始指示をバッファ入力制御部202に出力しなければよい。センサデータ収集部200から出力されるセンサデータと、バッファされていたセンサデータとを共に送信するには、バッファ入力制御部202とバッファ出力制御部212との間で、パケット送信部216にデータを出力するタイミングを調整すればよい。
 図4に関して説明したのと同様に、図9においても、1点鎖線で囲まれたバッファ入力制御部202、バッファ部204、バッファ出力制御部212、シャドウィング検知部214及びバッファ容量決定部220の機能を1又は複数の半導体集積回路で実現し、制御部130及びメモリ128(図2参照)とは別の構成として車載装置150に搭載してもよい。
 上記の第1変形例では、リアルタイム性毎(種類情報毎)の伝送遅延時間をサーバが算出する場合を説明したが、これに限定されない。車載装置が、伝送遅延時間を算出してもよい。例えば、サーバが、種類情報を含むパケットデータを受信すれば、その受信時刻を車載装置に送信し、車載装置が、該当するパケットデータの送信時刻、及びパケットに含まれるデータサイズ(センサデータ等)を記憶するようにすれば、車載装置は、送信したパケットデータのサーバでの受信時刻を用いて、リアルタイム性毎(種類情報毎)の伝送遅延時間を算出できる。また、車載装置は、並列アップロード時の回線速度を量子化して記憶することができる。したがって、その場合には、車載装置は、サーバからリアルタイム性毎(種類情報毎)の処理遅延時間及び許容遅延時間を受信すれば、各バッファに関する適切なバッファ容量を決定できる。
 上記では、インフラセンサから送信されるセンサデータには分類情報が付加されない場合、即ち、インフラセンサに関してはシャドウィングが発生しない場合を説明したが、これに限定されない。固定設置されているインフラセンサであっても、その周囲を走行する車両によってアンテナの送信電波が遮蔽され、シャドウィングが発生する可能性はある。したがって、車載装置と同様にインフラセンサにおいて、遅延時間に応じて複数種類のバッファを備え、シャドウィングが発生するとセンサデータをバッファし、シャドウィングが解消するとバッファデータに分類情報を付加し、遅延時間の短いデータを優先して並列アップロードするようにしてもよい。これにより、サーバ102は、インフラセンサから受信したセンサデータをより有効に利用することができる。
 さらに、上記第2実施形態のサブセット送信状態456では、データ変換部504がセンサデータをよりサイズの小さいサブデータセットに変換してそれをサーバ102に送信している。しかしこの開示はそのような実施の形態には限定されない。例えば、センサ機器122からセンサデータ収集部200が取込むセンサデータのデータセットを、一部のみに限定してもよい。例えば、どのようなデータを選択するかはあらかじめ決められた優先順位にしたがって定めてもよいし、サーバ102と通信が可能なときにサーバ102からの指示にしたがって定めてもよい。こうすることで、サーバ102との回線速度が遅いときにも、サーバ102に最低限のセンサデータを送信し、サーバ102による運転支援に反映できる。
 以上、実施の形態を説明することによりこの開示を説明したが、上記した実施の形態は例示であって、この開示は上記した実施の形態のみに制限されるわけではない。この開示の範囲は、開示の詳細な説明の記載を参酌した上で、請求の範囲の各請求項によって示され、そこに記載された文言と均等の意味及び範囲内での全ての変更を含む。
100  運転支援システム
102、152  サーバ
104  基地局
106、430、480  車両
108  ネットワーク
110 検知対象
120、150、490  車載装置
122  センサ機器
124  I/F部
126、144  通信部
128、142  メモリ
130、140  制御部
132、146  バス
190、440、492 センサデータ処理部
200  センサデータ収集部
202  バッファ入力制御部
204  バッファ部
206  第1バッファ
208  第2バッファ
210  第3バッファ
212  バッファ出力制御部
214  シャドウィング検知部
216、242  パケット送信部
218、240  パケット受信部
220  バッファ容量決定部
244  フィルタ部
246  データベース
248  リアルタイムデータ領域
250  準リアルタイムデータ領域
252  非リアルタイムデータ領域
254  処理部
256  解析結果領域
258  パラメータ生成部
450 通常状態
452 バッファリング状態
454 バッファ送信状態
456 サブセット送信状態
500 バッファ部
504 データ変換部
506、508 セレクタ
510 状態制御部
512 タイマ
514 フラグ
516 バッファ出力制御部
518 送信用バッファ
540 書込ポインタ
542、544、546 読出ポインタ
550、552、554 領域
300、302、304、306、308、310、312、314、350、352、354、400、402、404、406、408、410、412、414、416、560、562、564、566、568、570、572、574、578、580、582、584、586、620、622、624、650、652、656、658、660 ステップ
750 コンピュータ
752 タッチパネル
754 モニタ
756 各種ECU
758 各種センサ
760 スピーカ及びマイク
762 USBメモリ
770 CPU
772 バス
774 ROM
776 RAM
778 補助記憶装置
780 無線通信部
782 入出力I/F
784 USBメモリポート
790 音声処理I/F
T1  バッファ時間
T2  全バッファデータの送出所要時間
T3  伝送遅延時間
T4  処理遅延時間
TA1、TA2  許容遅延時間
ts  バッファ開始時刻
te  処理完了時刻
M0、M1、M2、M3、M4、M5  アドレス

Claims (23)

  1.  車両に搭載される車載装置であって、
     前記車両に装備されたセンサにより検出されたセンサデータを収集する収集部と、
     前記収集部により収集された前記センサデータを外部装置に送信する送信部と、
     前記収集部により収集された前記センサデータを記憶するバッファ部と、
     所定条件が満たされるか否かを判定する判定部と、
     前記送信部による前記センサデータの前記外部装置への送信を制御する制御部とを含み、
     前記制御部は、
      前記判定部により前記所定条件が満たされると判定されたことを受けて、前記送信部に、前記収集部により収集された前記センサデータの前記外部装置への送信を中止させ、
      前記所定条件が満たされると前記判定部が判定した後に、前記所定条件が満たされないと前記判定部による判定が変化したことを受けて、前記送信部に、前記バッファ部に記憶されている前記センサデータを、前記センサデータの取得時刻と現在時刻との差である遅延時間に応じた優先度で、より遅延時間が小さいセンサデータをより優先して、前記外部装置に並列に送信させる、車載装置。
  2.  前記所定条件は、前記外部装置との通信ができない現象の発生、又は、前記外部装置から受信したエリア情報により特定される道路地図上の所定範囲内に前記車両が位置すること及び前記外部装置との通信ができない現象の発生であり、
     前記所定条件が前記現象の発生であれば、前記判定部は、
      前記現象が発生していれば、前記所定条件が満たされると判定し、
      前記現象が発生していなければ、前記所定条件が満たされないと判定し、
     前記所定条件が、前記所定範囲内に前記車両が位置すること及び前記外部装置との通信ができない現象の発生であれば、前記判定部は、
      前記車両が前記所定範囲内に位置し且つ前記現象が発生していれば、前記所定条件が満たされると判定し、
      前記車両が前記所定範囲外に位置する又は前記現象が発生していなければ、前記所定条件が満たされないと判定する、請求項1に記載の車載装置。
  3.  前記遅延時間は、前記遅延時間の大きさに応じて複数の分類のいずれかに分類され、
     前記送信部は、前記並列に送信する際に、前記バッファ部に記憶されている前記センサデータのうち、より小さい遅延時間を含む前記分類に対応するセンサデータをより優先して、前記外部装置に送信する、請求項1又は2に記載の車載装置。
  4.  前記バッファ部は、前記複数の分類に分類される遅延時間を持つセンサデータをそれぞれ記憶するための複数のバッファを含み、
     前記複数のバッファの容量は、より小さい遅延時間を含む前記分類に対応するバッファの容量がより小さくなるように定められている、請求項3に記載の車載装置。
  5.  前記外部装置から、前記外部装置が行なう複数の処理がそれぞれ処理対象とする前記センサデータの前記取得時刻と前記処理を実行する時刻との差の上限である複数の許容遅延時間を受信する受信部をさらに含み、
     前記バッファ部は、それぞれ前記複数の許容遅延時間に対応して設定された容量を持ち、それぞれ前記複数の処理が処理対象とする前記センサデータを記憶するための複数のバッファを含む、請求項1又は2に記載の車載装置。
  6.  前記受信部は、前記許容遅延時間毎に対応する前記センサデータが前記車載装置から送信されてから前記外部装置により受信されるまでの時間である伝送遅延時間と、前記許容遅延時間毎に対応する前記センサデータに対して前記処理を開始してから完了するまでにかかる時間である処理遅延時間とを前記外部装置からさらに受信し、
     前記送信部が前記並列に送信する際の通信回線の回線速度を予測する予測部と、
     前記複数のバッファの容量を、前記予測部により予測された前記回線速度、前記許容遅延時間、前記伝送遅延時間、前記処理遅延時間、及び、前記送信部が前記並列に送信する際の、前記許容遅延時間毎に対応するセンサデータを前記複数のバッファからそれぞれ読出してから送信するまでの処理速度であるスループットに応じて決定された値に変更する変更部とをさらに含む、請求項5に記載の車載装置。
  7.  前記バッファ部は、
      前記判定部により前記所定条件が満たされると判定されたことを受けて、前記収集部により収集された前記センサデータの記憶を開始し、
      前記所定条件が満たされると前記判定部が判定した後に、前記所定条件が満たされないと前記判定部による判定が変化したことを受けて、前記収集部により収集された前記センサデータの記憶を停止する、請求項1から6のいずれか1項に記載の車載装置。
  8.  請求項1から7のいずれか1項に記載の車載装置から前記並列に送信される前記センサデータを受信する受信部と、
     前記受信部により受信された前記センサデータを、前記遅延時間に応じて複数に分類し、複数の前記分類の各々に応じたデータ処理を実行する処理部とを含むサーバコンピュータ。
  9.  車両に装備されたセンサにより検出されたセンサデータを外部装置に送信する車載装置に搭載される半導体集積回路であって、
     前記センサにより検出された前記センサデータを記憶するバッファ部と、
     所定条件が満たされるか否かを判定する判定部と、
     前記車載装置による前記センサデータの前記外部装置への送信を制御する制御部とを含み、
     前記制御部は、
      前記判定部により前記所定条件が満たされると判定されたことを受けて、前記車載装置に、前記センサにより検出された前記センサデータの前記外部装置への送信を中止させ、
      前記所定条件が満たされると前記判定部が判定した後に、前記所定条件が満たされないと前記判定部による判定が変化したことを受けて、前記車載装置に、前記バッファ部に記憶されている前記センサデータを、前記センサデータの取得時刻と現在時刻との差である遅延時間に応じた優先度で、より遅延時間が小さいセンサデータをより優先して、前記外部装置に並列に送信させる、半導体集積回路。
  10.  車両に搭載される車載装置と、
     前記車載装置と通信するサーバコンピュータとを含むシステムであって、
     前記車載装置は、
      前記車両に装備されたセンサにより検出されたセンサデータを収集する収集部と、
      前記収集部により収集された前記センサデータを前記サーバコンピュータに送信する送信部と、
      前記収集部により収集された前記センサデータを記憶するバッファ部と、
      所定条件が満たされるか否かを判定する判定部と、
      前記送信部による前記センサデータの前記サーバコンピュータへの送信を制御する制御部とを含み、
      前記制御部は、
       前記判定部により前記所定条件が満たされると判定されたことを受けて、前記送信部に、前記収集部により収集された前記センサデータの前記サーバコンピュータへの送信を中止させ、
       前記所定条件が満たされると前記判定部が判定した後に、前記所定条件が満たされないと前記判定部による判定が変化したことを受けて、前記送信部に、前記バッファ部に記憶されている前記センサデータを、前記センサデータの取得時刻と現在時刻との差である遅延時間に応じた優先度で、より遅延時間が小さいセンサデータをより優先して、前記サーバコンピュータに並列に送信させ、
     前記サーバコンピュータは、
      前記車載装置から前記並列に送信される前記センサデータを受信する受信部と、
      前記受信部により受信された前記センサデータを、前記遅延時間に応じて複数に分類し、複数の前記分類の各々に応じたデータ処理を実行する処理部とを含む、システム。
  11.  車両に装備されたセンサにより検出されたセンサデータを収集する収集ステップと、
     前記収集ステップにより収集された前記センサデータを外部装置に送信する送信ステップと、
     前記収集ステップにより収集された前記センサデータを記憶するバッファステップと、
     所定条件が満たされるか否かを判定する判定ステップと、
     前記送信ステップによる前記センサデータの前記外部装置への送信を制御する制御ステップとを含み、
     前記制御ステップは、
      前記判定ステップにより前記所定条件が満たされると判定されたことを受けて、前記送信ステップによる、前記収集ステップにより収集された前記センサデータの前記外部装置への送信を中止させるステップと、
      前記所定条件が満たされると前記判定ステップにおいて判定された後に、前記所定条件が満たされないと前記判定ステップにおける判定が変化したことを受けて、前記バッファステップにより記憶されている前記センサデータを、前記センサデータの取得時刻と現在時刻との差である遅延時間に応じた優先度で、より遅延時間が小さいセンサデータをより優先して、前記外部装置に並列に送信するステップとを含む、制御方法。
  12.  車両に搭載されるコンピュータに、
     前記車両に装備されたセンサにより検出されたセンサデータを収集する収集機能と、
     前記収集機能により収集された前記センサデータを外部装置に送信する送信機能と、
     前記収集機能により収集された前記センサデータを記憶するバッファ機能と、
     所定条件が満たされるか否かを判定する判定機能と、
     前記送信機能による前記センサデータの前記外部装置への送信を制御する制御機能とを実現させるためのコンピュータプログラムであって、
     前記制御機能は、
      前記判定機能により前記所定条件が満たされると判定されたことを受けて、前記送信機能による、前記収集機能により収集された前記センサデータの前記外部装置への送信を中止させる機能と、
      前記所定条件が満たされると前記判定機能が判定した後に、前記所定条件が満たされないと前記判定機能による判定が変化したことを受けて、前記バッファ機能により記憶されている前記センサデータを、前記センサデータの取得時刻と現在時刻との差である遅延時間に応じた優先度で、より遅延時間が小さいセンサデータをより優先して、前記外部装置に並列に送信する機能とを含む、コンピュータプログラム。
  13.  車両に装備されたセンサの出力するセンサデータを収集するセンサデータ収集部と、
     前記センサデータ収集部により収集された前記センサデータを格納可能なバッファと、
     前記センサデータ収集部により収集された前記センサデータ、又は前記バッファに格納されたセンサデータのいずれかを読出し、外部装置に送信する送信装置と、
     前記センサデータに関連する車載装置の状態を制御する状態制御部とを含み、
     前記状態制御部は、前記車載装置の状態と、前記送信装置による前記外部装置への前記センサデータの送信のスループットとにしたがって、前記車載装置の状態を有限個の状態の間で遷移させる、車載装置。
  14.  前記有限個の状態は、
     前記センサデータ収集部により収集されたセンサデータを前記送信装置によって前記外部装置に送信する第1の状態、
     前記センサデータ収集部により収集されたセンサデータを前記バッファに格納する第2の状態、及び、
     前記バッファに格納された前記センサデータを読出し、前記送信装置を介して前記外部装置に送信する第3の状態を含む、請求項13に記載の車載装置。
  15.  前記状態制御部は、
     前記車載装置が前記第1の状態にあるときに、前記スループットがしきい値より大きい値から前記しきい値以下の値に変化したことに応答して、前記第1の状態から前記第2の状態に前記車載装置の状態を遷移させる第1の状態遷移部と、
     前記車載装置が前記第2の状態にあるときに、前記スループットが前記しきい値より大きな値に変化したことに応答して、前記車載装置の状態を前記第2の状態から前記第3の状態に遷移させる第2の状態遷移部と、
     前記車載装置が前記第2の状態にあるときに、前記バッファ内にデータが存在しないことが検知されたことに応答して、前記車載装置の状態を前記第3の状態から前記第1の状態に遷移させる第3の状態遷移部と、
     前記車載装置が前記第3の状態にあるときに前記スループットが前記しきい値以下になったことに応答して、前記車載装置の状態を前記第3の状態から前記第2の状態に遷移させる第4の状態遷移部とを含む、請求項14に記載の車載装置。
  16.  前記有限個の状態はさらに、前記バッファに格納された前記センサデータを読出し、よりデータサイズの小さなサブデータに変換して前記送信装置を介して前記外部装置に送信する第4の状態を含み、
     前記状態制御部は、さらに、前記車載装置が前記第2の状態にある時間がしきい時間より長くなったことに応答して、前記車載装置の状態を前記第2の状態から前記第4の状態に変化させる第5の状態遷移部を含む、請求項15に記載の車載装置。
  17.  前記有限個の状態はさらに、前記センサデータ収集部により収集されるセンサデータを、より小さなサブデータに限定する第4の状態を含み、
     前記状態制御部は、さらに、前記車載装置が前記第2の状態にある時間がしきい時間より長くなったことに応答して、前記車載装置の状態を前記第2の状態から前記第4の状態に変化させる第5の状態遷移部を含む、請求項15に記載の車載装置。
  18.  前記状態制御部はさらに、前記車載装置が前記第4の状態にあるときに、前記スループットが前記しきい値より大きくなったことに応答して、前記車載装置の状態を前記第3の状態に遷移させる第6の状態遷移部を含む、請求項16又は請求項17に記載の車載装置。
  19.  前記状態制御部はさらに、前記車載装置が前記第4の状態にあるときに、前記スループットが前記しきい値より大きくなったことに応答して、前記車載装置の状態を前記第1の状態に遷移させる第7の状態遷移部を含む、請求項16又は請求項17に記載の車載装置。
  20.  前記第7の状態遷移部により前記車載装置の状態が前記第4の状態から前記第1の状態に遷移したことに応答して、前記バッファに記憶されている前記センサデータをクリアするデータクリア部をさらに含む、請求項19に記載の車載装置。
  21.  前記第4の状態において前記外部装置に送信されるデータサイズの、前記第4の状態以外におけるデータサイズに対する比は、前記スループットに対する単調増加関数である、請求項16から請求項20のいずれか1項に記載の車載装置。
  22.  車両に装備されたセンサの出力するセンサデータを収集するセンサデータ収集部がセンサデータを収集するステップと、
     前記センサデータ収集部により収集された前記センサデータをバッファに格納するステップと、
     前記センサデータ収集部により収集された前記センサデータ、又は前記バッファに格納されたセンサデータのいずれかを読出し、外部装置に送信するステップと、
     前記センサデータに関連する車載装置の状態を制御する状態制御部が、前記車載装置の状態と、前記外部装置への前記センサデータの送信のスループットとにしたがって、前記車載装置の状態を有限個の状態の間で遷移させるステップとを含む、車載装置の制御方法。
  23.  コンピュータを、
     車両に装備されたセンサの出力するセンサデータを収集するセンサデータ収集部と、
     前記センサデータ収集部により収集された前記センサデータを格納可能なバッファと、
     前記センサデータ収集部により収集された前記センサデータ、又は前記バッファに格納されたセンサデータのいずれかを読出し、外部装置に送信する送信装置と、
     前記センサデータに関連する車載装置の状態を、前記車載装置の状態と、前記送信装置による前記外部装置への前記センサデータの送信のスループットとにしたがって、有限個の状態の間で遷移させる状態制御部として機能させる、コンピュータプログラム。
PCT/JP2019/046406 2018-11-29 2019-11-27 システム、サーバコンピュータ、車載装置、制御方法、半導体集積回路及びコンピュータプログラム WO2020111134A1 (ja)

Priority Applications (4)

Application Number Priority Date Filing Date Title
CN201980073300.3A CN112955943B (zh) 2018-11-29 2019-11-27 系统、服务器计算机、车载装置、控制方法、半导体集成电路及记录介质
JP2020557785A JP7484721B2 (ja) 2018-11-29 2019-11-27 システム、サーバコンピュータ、車載装置、制御方法、半導体集積回路及びコンピュータプログラム
DE112019005963.7T DE112019005963T5 (de) 2018-11-29 2019-11-27 System, Server-Computer, fahrzeugmontierte Vorrichtung, Steuerverfahren, integrierte Halbleiterschaltung und Computerprogramm
US17/295,442 US11790771B2 (en) 2018-11-29 2019-11-27 Vehicle-mounted device for controlling transmission of sensor data

Applications Claiming Priority (2)

Application Number Priority Date Filing Date Title
JP2018223000 2018-11-29
JP2018-223000 2018-11-29

Publications (1)

Publication Number Publication Date
WO2020111134A1 true WO2020111134A1 (ja) 2020-06-04

Family

ID=70853809

Family Applications (1)

Application Number Title Priority Date Filing Date
PCT/JP2019/046406 WO2020111134A1 (ja) 2018-11-29 2019-11-27 システム、サーバコンピュータ、車載装置、制御方法、半導体集積回路及びコンピュータプログラム

Country Status (5)

Country Link
US (1) US11790771B2 (ja)
JP (1) JP7484721B2 (ja)
CN (1) CN112955943B (ja)
DE (1) DE112019005963T5 (ja)
WO (1) WO2020111134A1 (ja)

Cited By (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
WO2022097263A1 (ja) * 2020-11-06 2022-05-12 三菱電機株式会社 情報提供装置および情報提供方法
WO2023053444A1 (ja) * 2021-10-01 2023-04-06 日本電気株式会社 移動体制御システム、移動体制御方法、および画像通信装置
WO2023243324A1 (ja) * 2022-06-17 2023-12-21 住友電気工業株式会社 車載装置、車載システム、サーバコンピュータ、制御方法およびコンピュータプログラム
WO2024062786A1 (ja) * 2022-09-20 2024-03-28 住友電気工業株式会社 車載装置、制御方法およびコンピュータプログラム

Families Citing this family (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
WO2020235641A1 (ja) * 2019-05-21 2020-11-26 株式会社 Preferred Networks 情報送信装置、情報収集装置、情報送信方法、情報収集方法及び移動体
JP2022040537A (ja) * 2020-08-31 2022-03-11 株式会社Subaru 事故の自動通報機能を有する車両、およびサーバ装置
US20220385748A1 (en) * 2021-05-27 2022-12-01 Qualcomm Incorporated Conveying motion data via media packets
CN114328352B (zh) * 2021-12-24 2024-05-24 中汽创智科技有限公司 一种数据处理方法、装置、系统及存储介质
US20230393768A1 (en) * 2022-06-03 2023-12-07 The Boeing Company Prioritized storage and transmission tool for optimized telemetry unit memory allocation

Citations (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JPH0222251B2 (ja) * 1984-10-26 1990-05-17 Wright Barry Corp
JP2011076322A (ja) * 2009-09-30 2011-04-14 Hitachi Automotive Systems Ltd 車載通信端末装置および車両内部データ配信方法
JP2017028434A (ja) * 2015-07-21 2017-02-02 日本電信電話株式会社 無線通信システム、中継局装置及び無線通信方法

Family Cites Families (18)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP3619076B2 (ja) * 1999-09-14 2005-02-09 アルパイン株式会社 ナビゲーション装置
JP4000805B2 (ja) 2001-10-01 2007-10-31 オムロン株式会社 センサ情報伝送装置、センサネットワークシステム、センサ情報伝送プログラム、該センサ情報伝送プログラムを記録したコンピュータ読み取り可
EP1586015A4 (en) * 2002-10-01 2009-07-29 Argo Tech Corp FUEL PUMP MONITORING SYSTEM AND METHOD THEREOF
JP4239611B2 (ja) * 2003-02-13 2009-03-18 株式会社デンソー 基地局、および車載端末
JP4830805B2 (ja) * 2006-11-20 2011-12-07 マツダ株式会社 車載通信装置
JP4844486B2 (ja) * 2007-06-29 2011-12-28 株式会社デンソー 無線通信装置及び車車間通信システム
JP5115577B2 (ja) * 2010-03-22 2013-01-09 住友電気工業株式会社 無線通信システムとその時刻補正方法
JP2012015714A (ja) * 2010-06-30 2012-01-19 Sanyo Electric Co Ltd 端末装置
KR20140077369A (ko) * 2012-12-14 2014-06-24 한국전자통신연구원 차량 통신 시스템을 위한 차량용 단말 장치
US10063311B2 (en) * 2013-07-17 2018-08-28 Hughes Network Systems, Llc System and architecture for space-based and mobile terrestrial sensor vehicles, and end-to-end network for aggregation and processing of sensor data
JP2015211250A (ja) * 2014-04-24 2015-11-24 株式会社サイバー創研 通信ノード、帯域割当方法及び帯域割当プログラム
JP2016018474A (ja) * 2014-07-10 2016-02-01 大日本印刷株式会社 車両制御システム、車両制御プログラム及び車両情報提供サーバ
JP2017062689A (ja) 2015-09-25 2017-03-30 株式会社デンソー 車載通信装置及び車両通信システム
JP6414120B2 (ja) * 2016-03-30 2018-10-31 トヨタ自動車株式会社 無線通信装置および無線通信方法
JP2017187856A (ja) * 2016-04-01 2017-10-12 株式会社デンソー 走行状況適否判定システム、走行状況適否判定装置、およびサーバ
JP6838891B2 (ja) * 2016-08-19 2021-03-03 矢崎エナジーシステム株式会社 車載器および運行管理システム
WO2018189913A1 (ja) 2017-04-14 2018-10-18 マクセル株式会社 情報処理装置および情報処理方法
US11302188B2 (en) 2018-02-09 2022-04-12 Mitsubishi Electric Corporation Communication apparatus and computer readable medium

Patent Citations (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JPH0222251B2 (ja) * 1984-10-26 1990-05-17 Wright Barry Corp
JP2011076322A (ja) * 2009-09-30 2011-04-14 Hitachi Automotive Systems Ltd 車載通信端末装置および車両内部データ配信方法
JP2017028434A (ja) * 2015-07-21 2017-02-02 日本電信電話株式会社 無線通信システム、中継局装置及び無線通信方法

Cited By (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
WO2022097263A1 (ja) * 2020-11-06 2022-05-12 三菱電機株式会社 情報提供装置および情報提供方法
WO2023053444A1 (ja) * 2021-10-01 2023-04-06 日本電気株式会社 移動体制御システム、移動体制御方法、および画像通信装置
WO2023243324A1 (ja) * 2022-06-17 2023-12-21 住友電気工業株式会社 車載装置、車載システム、サーバコンピュータ、制御方法およびコンピュータプログラム
WO2024062786A1 (ja) * 2022-09-20 2024-03-28 住友電気工業株式会社 車載装置、制御方法およびコンピュータプログラム

Also Published As

Publication number Publication date
US20210390848A1 (en) 2021-12-16
US11790771B2 (en) 2023-10-17
CN112955943A (zh) 2021-06-11
JP7484721B2 (ja) 2024-05-16
JPWO2020111134A1 (ja) 2021-10-28
DE112019005963T5 (de) 2021-09-23
CN112955943B (zh) 2023-02-28

Similar Documents

Publication Publication Date Title
WO2020111134A1 (ja) システム、サーバコンピュータ、車載装置、制御方法、半導体集積回路及びコンピュータプログラム
CN111263293B (zh) 用于与车辆数据一起使用的动态数据压缩系统和方法
JP7396268B2 (ja) 運転支援のためのシステム、車載装置、方法及びコンピュータプログラム
US8538627B2 (en) Vehicular communication system, vehicular information collecting system, and vehicular communication program
WO2021171828A1 (ja) 車内外連携装置及び方法
JP2008199381A (ja) 移動体通信システム
US20200137142A1 (en) Vehicle data offloading systems and methods
US20220084406A1 (en) Information transmission device, information collection device, information transmission method, information collection method, and mobile entity
CN111866941B (zh) 一种网络资源调度方法及相关设备
JP4259430B2 (ja) 車両情報送信装置および車両
JP7070664B2 (ja) システム、そのサーバコンピュータ、制御方法及びコンピュータプログラム
CN110891160A (zh) 影像传输装置、影像传输方法、以及记录介质
JP2019176311A (ja) 車載装置、その制御方法及びコンピュータプログラム
JP7293849B2 (ja) 情報転送装置、車載装置、システム、情報転送方法及びコンピュータプログラム
JP7046274B1 (ja) 通信管理装置、通信管理方法、通信管理プログラム、運転支援装置、運転支援方法及び運転支援プログラム
US20210099850A1 (en) Inter-vehicle communication system and vehicle communication device
CN110969850B (zh) 基于二级处理的交通数据处理服务器及方法
JP5595170B2 (ja) 車車間通信装置
WO2023276435A1 (ja) 車載装置、サーバ及びシステム
JP2020184673A (ja) 車載装置、システム、制御方法、半導体集積回路及びコンピュータプログラム
JP2018018128A (ja) 情報提供方法および情報提供装置
JP2008027097A (ja) 画像撮影送信装置
WO2023058305A1 (ja) 車載装置、集約装置、車載システム、サーバコンピュータ、制御方法及びコンピュータプログラム
WO2024062786A1 (ja) 車載装置、制御方法およびコンピュータプログラム
WO2023074394A1 (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: 19890700

Country of ref document: EP

Kind code of ref document: A1

ENP Entry into the national phase

Ref document number: 2020557785

Country of ref document: JP

Kind code of ref document: A

122 Ep: pct application non-entry in european phase

Ref document number: 19890700

Country of ref document: EP

Kind code of ref document: A1