WO2023276431A1 - 車載装置、方法、コンピュータプログラム、運転支援サーバ及び運転支援方法 - Google Patents

車載装置、方法、コンピュータプログラム、運転支援サーバ及び運転支援方法 Download PDF

Info

Publication number
WO2023276431A1
WO2023276431A1 PCT/JP2022/018887 JP2022018887W WO2023276431A1 WO 2023276431 A1 WO2023276431 A1 WO 2023276431A1 JP 2022018887 W JP2022018887 W JP 2022018887W WO 2023276431 A1 WO2023276431 A1 WO 2023276431A1
Authority
WO
WIPO (PCT)
Prior art keywords
vehicle
server
information
list
unit
Prior art date
Application number
PCT/JP2022/018887
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 JP2023531469A priority Critical patent/JPWO2023276431A1/ja
Priority to CN202280045015.2A priority patent/CN117561555A/zh
Publication of WO2023276431A1 publication Critical patent/WO2023276431A1/ja

Links

Images

Classifications

    • GPHYSICS
    • G08SIGNALLING
    • G08GTRAFFIC CONTROL SYSTEMS
    • G08G1/00Traffic control systems for road vehicles
    • G08G1/09Arrangements for giving variable traffic instructions

Definitions

  • This disclosure relates to an in-vehicle device, method, computer program, driving support server, and driving support method.
  • This application claims priority based on Japanese Application No. 2021-110815 filed on July 2, 2021, and incorporates all the content described in the Japanese application.
  • driving support at intersections based on a dynamic map created using information from roadside cameras, LiDAR (Light Detection And Ranging), and so-called infrastructure sensors and vehicles.
  • the dynamic map creation process is based on the data collected from the infrastructure sensors and vehicles in the edge server located so that high-speed communication can be performed with the infrastructure sensors in the area where the vehicle is running and the vehicles on the road. done.
  • a dynamic map is arranged in each vehicle, and an in-vehicle device installed in each vehicle performs driving support using the dynamic map according to the functions provided in each vehicle.
  • Patent Document 1 One proposal for solving these problems is disclosed in Patent Document 1 given below.
  • the communication path between the vehicle and the server is made redundant in case the communication between the vehicle and the server is interrupted or the information from the server to the vehicle is lost.
  • a vehicle is provided with a plurality of communication devices including so-called inter-vehicle communication.
  • an in-vehicle device mounted on the vehicle searches for another vehicle to which communication data from the server can be transferred, receives the data by inter-vehicle communication, and uses the data for driving support.
  • the surrounding vehicle Upon receiving the search signal from the other vehicle, the surrounding vehicle determines whether or not it is possible to transfer the communication data from the server, and if possible, performs communication. Even when communication is impossible, the surrounding vehicle transmits communication to that effect to the vehicle that has sent the search signal.
  • An in-vehicle device includes a wireless communication device and a driving assistance device for performing driving assistance of a vehicle using driving assistance information received from an external server via the wireless communication device.
  • the device further comprises an operation determination unit that determines whether or not the in-vehicle device should operate in place of the external server in response to receiving a delivery request for driving assistance information from another in-vehicle device. and an assistance information transmission device that transmits driving assistance information of the vehicle that can be used by the self to another in-vehicle device by a wireless communication device when the determination by the operation determination unit is affirmative.
  • a method for operating an in-vehicle device includes a step in which a computer performs driving assistance for a vehicle using driving assistance information received from an external server via a wireless communication device; determining whether or not the computer should operate in place of the external server in response to receiving a request for distribution of driving assistance information from the in-vehicle device; If yes, transmitting the computer-available driving assistance information to the other in-vehicle device via the wireless communication device.
  • a computer program causes a computer connected to a wireless communication device to perform driving assistance for driving a vehicle using driving assistance information received from an external server via the wireless communication device.
  • a device a motion determination unit that determines whether a computer should operate in place of an external server in response to receiving a request for distribution of driving support information from another in-vehicle device, and a motion determination unit
  • the computer functions as a support information transmission device that transmits the support information that can be used by the computer to another vehicle-mounted device by means of a wireless communication device.
  • a driving assistance server is a driving assistance server that creates driving assistance information in a management area and transmits it to vehicles in the management area, and from a sensor that detects traffic conditions in the management area
  • a driving support information creation unit that receives the sensor data of and creates driving support information, and an alternative that is a list of vehicles that can operate as an alternative server for the driving support server by collecting vehicle information about vehicles existing in the management area It includes an alternative server vehicle list creation unit that creates a server vehicle list, and a transmission device that adds the alternative server vehicle list to the driving support information and transmits it to the vehicle.
  • a driving assistance method is a driving assistance method in a driving assistance system including a driving assistance server for creating driving assistance information within a management area and transmitting the information to vehicles within the management area, , a step of a computer receiving sensor data from a sensor that detects traffic conditions in a management area and creating driving assistance information; a step of creating an alternative server vehicle list, which is a list of vehicles that can operate as an alternative server of the computer; and a step of adding the alternative server vehicle list to the driving support information and transmitting it to the vehicle.
  • FIG. 1 is a diagram showing the configuration of a driving assistance system according to an embodiment of this disclosure.
  • FIG. 2 is a block diagram showing a functional configuration of an in-vehicle device according to an embodiment of this disclosure.
  • FIG. 3 is a block diagram showing a functional configuration of the mini edge server shown in FIG. 2;
  • FIG. 4 is a block diagram showing the functional configuration of the mini-edge server initializing unit shown in FIG. 2;
  • FIG. 5 is a block diagram showing a functional configuration of the edge server shown in FIG. 1;
  • FIG. 1 is a diagram showing the configuration of a driving assistance system according to an embodiment of this disclosure.
  • FIG. 2 is a block diagram showing a functional configuration of an in-vehicle device according to an embodiment of this disclosure.
  • FIG. 3 is a block diagram showing a
  • FIG. 8 is a flowchart of a program executed by the in-vehicle device shown in FIG. 1.
  • FIG. FIG. 9 is a flow chart of a program that implements the mini-edge server initialization section shown in FIGS.
  • FIG. 10 is a flowchart of a program executed by the cooperative control ECU (Electronic Control Unit) shown in FIG. 11 is a flowchart of a program executed by the transfer unit shown in FIG. 2;
  • FIG. FIG. 12 is a flow chart of a program that implements the mini-edge server shown in FIGS. 13 is a flowchart of a program executed by the cooperative control ECU shown in FIG. 1.
  • FIG. FIG. 14 is a diagram for explaining the second embodiment of the present disclosure.
  • FIG. 14 is a diagram for explaining the second embodiment of the present disclosure.
  • FIG. 15 is a diagram showing a graph for determining target regions in the second embodiment.
  • FIG. 16 is a block diagram showing a functional configuration of an edge server according to the second embodiment;
  • FIG. 17 is a flowchart of a program executed by an edge server in the second embodiment;
  • FIG. 18 is a block diagram showing the hardware configuration of the edge server in the first and second embodiments;
  • FIG. 19 is a block diagram showing a network configuration in a vehicle equipped with the in-vehicle device according to the first embodiment and the second embodiment.
  • FIG. 20 is a block diagram showing a schematic hardware configuration of an in-vehicle device.
  • Patent Literature 1 In the technology described in Patent Literature 1, a vehicle searches for a vehicle to switch to after communication with the server is interrupted. Therefore, it is difficult to apply the technology described in Patent Literature 1 to highly real-time driving assistance such as sharing a dynamic map. In the first place, there is also the problem that driving support information cannot be obtained from any route when the server fails. Therefore, there is a demand for a technology that is highly real-time and provides as much driving assistance information as possible.
  • the purpose of this disclosure is to provide an in-vehicle device, method, computer program, driving support server, and driving support method that are highly real-time and can obtain as much driving support information as possible.
  • An in-vehicle device uses a wireless communication device and assistance information for assisting driving received from an external server via the wireless communication device to assist driving of the vehicle.
  • the in-vehicle device determines whether the in-vehicle device should operate in place of the external server and a support information transmission device that transmits vehicle support information that can be used by the in-vehicle device to another in-vehicle device by a wireless communication device when the determination by the motion determination unit is affirmative.
  • the operation determination unit determines whether or not the in-vehicle device should operate in place of the external server, and determines that it should operate.
  • an assistance information transmission device transmits assistance information available for on-board devices to other vehicles.
  • Other vehicles that cannot communicate with the external server can use the assistance information transmitted from this vehicle to provide driving assistance.
  • the assistance information received by the driving assistance device from the external server includes the driving assistance information and a list of vehicles that can operate as an alternative server. is described in the list, the in-vehicle device may include a list reference unit that determines whether or not the in-vehicle device should operate in place of the external server.
  • a list of vehicles is distributed to each vehicle in advance as support information.
  • a vehicle that loses communication with an external server can use this list to immediately identify the vehicle to obtain the necessary assistance information without having to search for other vehicles to communicate with.
  • the in-vehicle device further includes a reception availability determination unit that determines whether or not support information can be received from the external server via the wireless communication device. and when the determination by the reception propriety determination unit is affirmative, the driving support information received from the external server is sent to the other in-vehicle device in response to receiving a distribution request for the support information from the other in-vehicle device.
  • a transfer device for transferring may be included.
  • the vehicle itself can receive assistance information from an external server
  • other vehicles may request delivery of driving assistance information to this vehicle. This means that some kind of failure has occurred in which only that vehicle cannot communicate with the external server. Since the in-vehicle device according to this disclosure can receive assistance information through communication with an external server, the driving assistance information can be transferred to another vehicle. As a result, even a vehicle with some kind of communication failure can immediately obtain driving support information.
  • the in-vehicle device further includes a buffer that stores delivery requests received from other vehicles on a first-in, first-out basis. Delivery requests may be ignored if the time is greater than the threshold time.
  • the in-vehicle device further includes an internal server that builds driving assistance information using information available to the in-vehicle device, and the assistance information transmission device determines that the list reference unit determines affirmatively, and the reception availability determination unit
  • a server initialization unit that initializes and starts an internal server in response to receiving a support information distribution request from the outside when the determination by is negative, and receives a support information distribution request from another in-vehicle device.
  • a distribution device that distributes the driving assistance information generated by the internal server to the other in-vehicle device in response to the operation.
  • the in-vehicle device will act as an alternative server.
  • a server initialization unit starts an internal server, and the information available to the internal server is used to generate driving assistance information.
  • the distribution device can quickly distribute the generated driving assistance information. As a result, even when some kind of trouble occurs in the external server, many vehicles can quickly obtain the driving support information.
  • the in-vehicle device further includes a buffer that stores distribution requests received from other vehicles on a first-in, first-out basis. Delivery requests may be ignored if the time is greater than the threshold time.
  • the server initialization unit when the determination by the list inquiry unit is affirmative and the determination by the reception availability determination unit is negative, receives the number of The internal server may be initialized and activated in response to receiving multiple delivery requests.
  • the server initialization unit implements functions of a cooperation node candidate selection unit that selects a plurality of cooperation node candidates from among a plurality of other vehicles that can communicate via the wireless communication device, and an internal server function. acquisition of information on the dynamic state of communication with the selected processing unit and the processing unit selection unit that selects the processing unit of the processing unit, and information on the dynamic state of communication with the outside
  • a dynamic state information acquisition unit selects at least one cooperative node based on the selected cooperative node candidate and the acquired dynamic state, and selects the sensor data type to be collected from the cooperative node and the destination to which the driving support information is distributed. and an initial information determination unit that determines the delivery cycle of the driving support information; and a transfer unit that transfers the information determined by the initial information determination unit to the storage device of the internal server.
  • the server initialization unit When starting the internal server, the server initialization unit appropriately sets the operating conditions of the internal server according to the situation at that time. As a result, the internal server can quickly generate necessary driving support information based on the latest information and distribute it to each vehicle.
  • the in-vehicle device may further include a timer for periodically operating the server initialization unit.
  • the server initialization part operates regularly. Information used by the internal server for driving support information is updated each time. Since the internal server always generates and distributes driving support information based on the latest information, each vehicle can quickly use accurate driving support information.
  • the in-vehicle device further provides support information for at least one of the vehicles listed in the list when the determination by the list reference unit is negative and the determination by the reception availability determination unit is negative.
  • a request sending device for sending a distribution request may be included.
  • the server If communication with the server is interrupted when the self is not on the list of vehicles that act as an alternative server, it is necessary to obtain driving support information from an external vehicle. Since the list is distributed in advance, the driving support information can be quickly obtained by transmitting a distribution request to at least one vehicle described in the list.
  • the request sending device may send delivery requests in order from the top of the list until the support information is returned.
  • the internal server may not be able to start for some reason, or it may take time to process a large number of distribution requests. In such a case, it is not possible to quickly obtain the driving assistance information. Therefore, by sending delivery requests to the vehicles listed in the list in order, the driving assistance information can be obtained as early as possible from the vehicles to which the driving assistance information can be delivered.
  • the request transmission device may randomly rearrange the list prior to starting transmission of distribution requests.
  • the request transmission device may randomly select a vehicle from the list and transmit the distribution request.
  • the in-vehicle device in response to receiving from the external server an information distribution request requesting transmission of information on the static specifications and dynamic state of the in-vehicle device, , and an information transmitting device that transmits information regarding static specifications or dynamic states of computational resources or communication resources available to the in-vehicle device in the in-vehicle device to the external server.
  • Static specifications include, for example, the speed of wireless communication with the outside of the vehicle, the communication band of the in-vehicle network, and the processing capacity of related ECUs.
  • the dynamic state includes, for example, the amount of data communicated in wireless communication with the outside of the vehicle, the amount of data communicated in the in-vehicle network, the load state of the ECU, the number of surrounding vehicles that can communicate with communication quality above a certain level, and the like. Either one of static specification and dynamic state may be used, or both may be used. The same is true for computational and communication resources.
  • the order of the alternative server vehicles in the list of alternative server vehicles is not particularly limited. good.
  • the in-vehicle device periodically determines whether or not the in-vehicle device should operate by substituting for the external server. , and may further include a notification device for notifying the external server of the result of the determination.
  • the external server can appropriately update the list of vehicles that can act as alternate servers.
  • the list distributed to the vehicle receiving the support information from the external server is also appropriately updated at the next distribution timing. As a result, even if each vehicle becomes unable to communicate with the external server, it can quickly obtain appropriate assistance information from the vehicle that operates as an alternative server.
  • a method for operating an in-vehicle device includes steps in which a computer performs driving assistance for a vehicle using assistance information received from an external server via a wireless communication device; a step of determining whether or not the computer should operate in place of the external server in response to receiving a support information delivery request from another in-vehicle device; is affirmative, sending the computer-usable assistance information over the wireless communication device to the other in-vehicle device.
  • the in-vehicle device determines whether or not it should act as a substitute for the external server.
  • the in-vehicle device determines that the in-vehicle device should operate as a substitute for the external server, the in-vehicle device transmits support information available for the in-vehicle device to other vehicles.
  • Other vehicles that cannot communicate with the external server can use the assistance information transmitted from this vehicle to provide driving assistance. As a result, even when a failure occurs in the external server, it is possible to immediately continue driving assistance in many vehicles.
  • a computer program causes a computer connected to a wireless communication device to perform vehicle driving assistance using assistance information received from an external server via the wireless communication device.
  • an operation determination unit that determines whether or not the computer should operate in place of the external server in response to receiving a request for distribution of assistance information from the driving support device and another in-vehicle device; and an operation determination unit When the determination is affirmative, the computer functions as a support information transmission device that transmits the support information that can be used by the computer to another vehicle-mounted device by a wireless communication device.
  • the operation determination unit determines whether or not the in-vehicle device should operate in place of the external server.
  • the support information transmitting device transmits support information that the in-vehicle device can use to other vehicles.
  • Other vehicles that cannot communicate with the external server can use the assistance information transmitted from this vehicle to provide driving assistance. As a result, even when a failure occurs in the external server, it is possible to immediately continue driving assistance in many vehicles.
  • a driving assistance server is a driving assistance server that creates assistance information for assisting driving in a management area and transmits it to a vehicle in the management area,
  • a support information creation unit that receives sensor data from a sensor that detects traffic conditions and creates support information, and a vehicle that collects vehicle information about vehicles existing within a management area and can operate as an alternative server for the driving support server.
  • a transmission device for adding the substitute server vehicle list to the support information and transmitting it to the vehicle.
  • each vehicle must search for a vehicle that will act as a substitute for the driving support server.
  • the driving support server create an alternative server vehicle list in advance and adding it to the support information and distributing it, each vehicle can quickly determine from which vehicle the support information should be obtained. As a result, even when a failure occurs in the driving assistance server, assistance information can be immediately obtained from many vehicles.
  • the alternative server vehicle list creation unit includes a divided area list creation unit that divides the management area into a plurality of divided areas and creates an alternative server vehicle list for each of the plurality of divided areas, and the transmitting device: For each of the plurality of divided areas, an area-specific transmission device may be included that attaches an alternative server vehicle list for the divided area to the support information and transmits the support information to each vehicle existing in the divided area.
  • the area managed by the driving support server is divided into multiple divided areas, an alternative server vehicle list is created for each divided area, and an alternative server vehicle list for each divided area is distributed.
  • each vehicle can immediately determine to which vehicle the distribution request should be sent to obtain the support information by using this substitute server vehicle list. As a result, even when communication with the driving assistance server is interrupted, each vehicle can quickly obtain the assistance information.
  • a driving assistance method includes a driving assistance server for creating assistance information for assisting driving within a management area and transmitting the information to a vehicle within the management area.
  • a driving assistance method in a system comprising: a step of a computer receiving sensor data from a sensor that detects traffic conditions in a management area and creating assistance information; and creating an alternative server vehicle list, which is a list of vehicles that can operate as alternative servers for the driving support server; include.
  • each vehicle When communication is interrupted while the in-vehicle device is receiving support information from the outside, each vehicle must search for a vehicle that operates to distribute support information.
  • each vehicle can quickly determine from which vehicle the support information should be obtained. As a result, each vehicle can immediately obtain the assistance information even when a failure occurs in communication with the facility that distributes the driving assistance information.
  • a driving support system 50 includes an edge server 62 and a vehicle 60 .
  • vehicle 60 has various sensors such as LiDAR 84, onboard camera 82, millimeter wave radar 80, and the like.
  • the vehicle 60 further includes an in-vehicle device 90 that collects sensor data from these sensors, transmits it to the edge server 62 by wireless communication, receives information for driving assistance from the edge server 62, and uses the information for driving assistance.
  • Information for driving assistance is, for example, a dynamic map.
  • the vehicle 60 cooperates with various ECUs 92 for controlling respective parts of the vehicle 60 according to the control by the vehicle-mounted device 90 and the vehicle-mounted device 90 to prevent communication with the edge server 62 from being interrupted or from other vehicles. It also includes a cooperative control ECU 94 for executing processing when a dynamic map distribution request is received.
  • in-vehicle device 90 communicates with various sensors and various ECUs provided in vehicle 60 inside and outside the vehicle via communication device 154 and a network (not shown) installed in vehicle 60. and an in-vehicle gateway 150 that controls communications with the unit 152 .
  • the in-vehicle device 90 further receives driving support information such as a dynamic map from the edge server 62, sensor data from various sensors provided in the vehicle, and information on their operating states from various ECUs.
  • a cooperation unit 152 is included.
  • the in-vehicle device 90 further includes a driving support information storage unit 156 for storing each information including the driving support information received by the in-vehicle/outside communication unit 152, and a communication unit 154 outside the vehicle normally receives information according to control from the cooperation control ECU 94. and a selection unit 158 for selecting the dynamic map created by the link control ECU 94 when communication with the edge server 62 is interrupted and inputting the dynamic map to the in-vehicle/outside link unit 152 .
  • a driving support information storage unit 156 for storing each information including the driving support information received by the in-vehicle/outside communication unit 152, and a communication unit 154 outside the vehicle normally receives information according to control from the cooperation control ECU 94.
  • a selection unit 158 for selecting the dynamic map created by the link control ECU 94 when communication with the edge server 62 is interrupted and inputting the dynamic map to the in-vehicle/outside link unit 152 .
  • the cooperative control ECU 94 mounted on the vehicle 60 monitors communication by the external communication device 154 as its functional unit, and detects the state of communication with the edge server 62 and other vehicles. It includes a communication state detection unit 180 for executing processing and processing for extracting a dynamic map distribution request received from another vehicle.
  • the linked ECU 94 further includes a distribution request buffer 184 for temporarily storing distribution requests extracted by the communication state detection unit 180 on a first-in, first-out basis, a communication state detection unit 180, the communication state detected by the communication state detection unit 180, and a cooperative operation determination unit 182 that determines the operation mode of the cooperative operation by the in-vehicle device 90 based on the number of distribution requests stored in the distribution request buffer 184 .
  • the cooperative control ECU 94 further includes a mini edge server 188 for generating a map similar to the dynamic map received from the edge server 62 based on available information stored in the driving support information storage unit 156.
  • Mini edge server 188 functions as an internal server of vehicle 60 .
  • the cooperation control ECU 94 further includes a mini edge server initialization unit for activating the mini edge server 188 in response to the detection of communication interruption between the external communication device 154 and the edge server 62 by the cooperation operation determination unit 182. 190 included.
  • the mini-edge server initialization unit 190 extracts information necessary for the dynamic map by the mini-edge server 188 from the information stored in the driving support information storage unit 156 or generates the mini-edge server. 188 to initialize the mini-edge server 188 to operate properly.
  • the cooperation control ECU 94 further includes a mini-edge server output storage unit 192 for storing driving support information such as a dynamic map output from the activated mini-edge server 188, and according to the operation mode determined by the cooperation operation determination unit 182. and a transfer unit 186 for selecting appropriate data and transmitting it to the edge server 62 via the off-vehicle communication device 154 .
  • the transfer unit 186 further responds to the distribution request stored in the distribution request buffer 184, reads the dynamic map from the driving support information storage unit 156 or the mini-edge server output storage unit 192 according to the operation mode, and transmits it to the external communication device. 154 to the transmission source of the distribution request, or input to the in-vehicle/exterior cooperation unit 152 through the selection unit 158 .
  • the operation modes determined by the cooperation operation determination unit 182 include a normal mode, a transfer mode, and a distribution mode.
  • the normal mode is an operation mode when communication with the edge server 62 is normal and no delivery request is received.
  • the transfer mode is an operation mode when communication with the edge server 62 is normally performed and when a delivery request is received from another vehicle.
  • the distribution mode is an operation mode when communication with the edge server 62 is interrupted and the number of distribution requests exceeding the threshold is received from other vehicles within a predetermined time.
  • the in-vehicle device 90 transmits the sensor data stored in the driving support information storage unit 156 to the edge server 62 in the normal mode.
  • the mini edge server 188 transmits the dynamic map downloaded from the edge server 62 and stored in the driving support information storage unit 156 to the transmission source of the distribution request in addition to the operation in the normal mode.
  • the mini edge server 188 does not operate in normal mode and transfer mode.
  • Mini-edge server 188 operates only in delivery mode.
  • the mini-edge server 188 includes other vehicles or infrastructure sensors that collect sensor data when creating a dynamic map, and vehicles that are distribution destinations that distribute the generated dynamic map (these vehicles). and infrastructure sensors are referred to as “cooperative nodes”), and based on the information of the cooperative nodes stored in the node storage unit 250, from other vehicles via the external communication device 154, or from the in-vehicle device. and a sensor data collector 252 for collecting sensor data from the own vehicle's sensors via 90 respectively.
  • the mini-edge server 188 further includes a sensor data buffer 254 for temporarily storing sensor data collected by the sensor data collection unit 252, analyzes the sensor data stored in the sensor data buffer 254, and a sensor data analysis unit 256 for merging with the dynamic map received from the edge server 62 when communication with the edge server 62 was possible to create a new dynamic map.
  • mini-edge server initialization unit 190 includes node information DB 302 that stores and manages information about nodes that can communicate with vehicle 60, such as surrounding vehicles and infrastructure sensors. and a node information updating unit 300 for updating the information stored in the node information DB 302 using the obtained information stored in the driving support information storage unit 156 .
  • the mini-edge server initialization unit 190 further includes a vehicle resource DB 304 for storing specifications related to calculation resources, communication resources, sensors, etc. of the own vehicle, and a timer 306 for triggering initialization.
  • Mini edge server initialization unit 190 further includes node number determination unit 308 that determines the number of nodes to be selected as cooperative nodes by referring to vehicle resource DB 304 in response to an initialization instruction from timer 306 .
  • the mini edge server initialization unit 190 further determines nodes suitable as cooperative nodes by the node number determination unit 308 in response to a trigger by the timer 306 or an initialization instruction of the mini edge server 188 from the cooperation operation determination unit 182. and a node determination unit 310 for selecting the specified number from the node information DB 302 and storing them in the node storage unit 250 of the mini edge server 188 .
  • the cooperative nodes selected by the node determination unit 310 include both the data collection vehicle that collects sensor data and the delivery vehicle that delivers the dynamic map generated by the mini-edge server 188 . Both sets may or may not match.
  • edge server 62 includes a communication device 350 for communicating with the outside by wire or wirelessly, and a receiving unit 352 for appropriately distributing data received by communication device 350 according to its contents.
  • the edge server 62 further includes a dynamic map creating unit 362 for creating a dynamic map from the sensor data received from each vehicle and infrastructure sensor by the receiving unit 352 and a pre-stored high-definition map; and a dynamic map storage unit 364 that stores the dynamic map created by the dynamic map creation unit 362 .
  • the edge server 62 further receives vehicle information received from vehicles within the area managed by the edge server 62 from the receiving unit 352, and a vehicle management unit 354 for managing the vehicle information, and the vehicle management unit 354 manages the vehicle information. and a vehicle information storage unit 356, which is a database for storing vehicle information. Based on the vehicle information stored in the vehicle information storage unit 356, the edge server 62 further lists vehicles that can act as substitutes for the edge server 62 if communication between the vehicle and the edge server 62 is interrupted.
  • An alternative server vehicle list creation unit 358 for creating an alternative server vehicle list and an alternative server vehicle list storage unit 360 for storing the alternative server vehicle list created by the alternative server vehicle list creation unit 358 are included.
  • the edge server 62 also periodically reads the dynamic map stored in the dynamic map storage unit 364 and creates an alternative server vehicle list for adding the alternative server vehicle list stored in the alternative server vehicle list storage unit 360.
  • a list addition section 366 is included.
  • the edge server 62 further sends the dynamic map with the substitute server vehicle list to the destination vehicle determined based on the vehicle information stored in the vehicle information storage unit 356 via the communication device 350 as driving support information. and a transmitter 368 that transmits as
  • Edge server 62 A program that implements the alternative server vehicle list creating unit 358 of the edge server 62 has the following control structure.
  • the alternative server vehicle list is created only for intersection areas where driving assistance is particularly required, but lists may be created for other areas as well.
  • this program executes step 400 to wait until the update period of the alternative server vehicle list comes, and step 404 for all vehicles under management when the update period of the alternative server vehicle list comes. and step 402 to perform.
  • this program sends an instruction to each vehicle requesting that each vehicle determine whether it can operate as an alternative server and transmit the result to the edge server 62 .
  • step 402 by performing step 406 of receiving a response from each vehicle under management and step 410 of creating an alternate server vehicle list for the intersection area managed by edge server 62 . 408.
  • Step 410 consists of alternate servers comprising vehicles with sufficient performance and dynamic resources to act as alternate servers among the vehicles in the intersection region of interest based on the response from each vehicle received in step 406. It includes step 420 of determining a vehicle list and step 422 of storing the alternate server vehicle list determined in step 420 in alternate server vehicle list storage 360 .
  • a program that implements the in-vehicle device 90 has the following control structure. Referring to FIG. 7, this program waits until the update period of the dynamic map of the host vehicle arrives at step 450, and in response to the arrival of the update period of the dynamic map, the dynamic map from the edge server 62 is displayed. It includes a step 452 of checking whether a map can be received and a step 454 of branching control flow depending on whether a dynamic map was received.
  • the program further integrates the dynamic map received in step 452 with the information held by the own vehicle and utilizes it for driving support in step 456. , and a step 458 of determining whether the mini edge server 188 is running and branching the control flow according to the result of the determination.
  • the program further includes a step 460 that shuts down the mini-edge server 188 in response to an affirmative determination of step 458; is completed, a step 462 of setting the operating mode of the vehicle 60 to normal mode and returning control to step 450 .
  • the dynamic map can be received in step 452
  • the substitute server vehicle list added to the dynamic map is extracted and stored in a predetermined storage device.
  • this program determines whether or not the own vehicle is listed in the alternative server vehicle list held by the own vehicle. and, in response to a negative determination in step 470, transmitting a dynamic map distribution request to the first alternate server vehicle in the list (the vehicle with the highest priority as an alternate server). 472.
  • the program further includes a step 474 for determining whether a dynamic map has been received and branching control flow according to the result of the determination; Step 476 for branching the flow of control according to whether there is a listed next priority alternate server vehicle that has not yet sent a dynamic map delivery request, and a positive determination at step 476. and a step 478 of sending a dynamic map delivery request to the vehicle and returning control to step 474 in response to that.
  • step 474 When the determination in step 474 is affirmative, the dynamic map can be received, so the control proceeds to step 456, where the information possessed by the vehicle and this dynamic map are integrated and utilized for driving support.
  • step 456 the information possessed by the vehicle and this dynamic map are integrated and utilized for driving support.
  • the subsequent processing is the same as when the determination in step 454 is affirmative.
  • step 476 determines whether there are no more alternative server vehicles. If the determination in step 476 is negative, it means that there are no more alternative server vehicles, so the control proceeds to step 480 and the vehicle is operated according to only the information held by the own vehicle. Control then returns to step 450 . In such a case, it is desirable to inform the driver that the driving support information cannot be obtained.
  • the program further includes, in response to an affirmative determination at step 470, branching the control flow according to whether the mini-edge server 188 is running in the host vehicle at step 500; In response to a negative determination in step 500, the control flow branches according to whether the number of dynamic map distribution requests received from other vehicles within a predetermined period of time exceeds a predetermined threshold. and a step 502 of causing.
  • the program further responds to an affirmative determination of step 502 by performing step 504 of initializing the mini-edge server 188 to run; and step 506 which initiates and returns control to step 450 of FIG.
  • step 500 When the determination in step 500 is affirmative and when the determination in step 502 is negative, the control returns to step 450 in FIG. 7 without executing steps 504 and 506.
  • Step 504 in FIG. 8 corresponds to the processing performed by the mini-edge server initialization unit 190 in FIG.
  • the program that implements mini-edge server initialization unit 190 includes step 550 of observing the connection quality with surrounding vehicles.
  • Indices for measuring the connection quality include whether or not communication is possible in the first place, throughput when communication is possible, communication delay time, and the like.
  • This program further includes, after step 550, a step 552 of determining a predetermined number of cooperation node candidates by selecting those with high static specifications (so-called specifications) from surrounding vehicles.
  • This program further extracts the ECUs in the host vehicle that perform the actual data generation and data transfer in building the dynamic map based on their specifications, step 554, and the current status of the ECUs extracted in step 554. and step 556 of obtaining information about the dynamic state.
  • This program further determines, from among the vehicles selected in step 552, a data collection vehicle, collection data type, dynamic map distribution vehicle, and distribution period according to the amount of information that can be processed by the own vehicle (step 558). including.
  • the decision at step 558 is made based on the dynamic state obtained at step 556 .
  • the program further includes a step 560 of transferring the determined information to the mini-edge server 188 and terminating the process.
  • the dynamic state collected here includes the operating load of the CPU (Central Processing Unit) of the ECU, memory usage, communication delay, and the like
  • this distribution request receiving program includes a step 600 of writing received distribution requests into distribution request buffer 184 shown in FIG. and branching 602 of control flow according to whether the value has been exceeded.
  • the program further responds to an affirmative determination of step 602 by setting the operating mode to delivery mode and terminating execution of the program at step 604 and responsive to a negative determination of step 602. and step 606 for setting the operation mode to the transfer mode and terminating the execution of this program.
  • step 600 a step of determining whether or not the own vehicle is listed in the substitute server vehicle list is provided, and if the determination is negative, the execution of this program is terminated immediately. good too.
  • step 604 in FIG. 10 the transfer mode is entered at step 606
  • the following delivery program is executed by the transfer section 186 shown in FIG. Referring to FIG. 11, the program waits until the distribution request is stored in the distribution request buffer 184 at step 650, and when it is determined that the distribution request is stored in the distribution request buffer 184 at step 650, the program is executed. and in response, reading 652 the delivery request from delivery request buffer 184 .
  • the program continues to step 652 where the flow of control branches depending on whether the elapsed time from the time the delivery request was received until the time the delivery request was read (the current time) is within a predetermined threshold time. including step 654 to allow
  • the program further responds to an affirmative determination of step 654 to step 656, which branches control flow according to whether the mini-edge server 188 is running, and to an affirmative determination of step 656.
  • Step 658 in response to which the dynamic map created by the mini-edge server 188 is read from the mini-edge server output storage unit 192 of FIG. include.
  • this program transfers the dynamic map stored in the driving support information storage unit 156 to the transmission source of the distribution request, and returns control to step 650. including step 660;
  • the dynamic map is received by the external communication device 154 from the edge server 62 and stored in the driving support information storage unit 156 via the internal/external communication unit 152 .
  • the transfer unit 186 periodically sends the dynamic map stored in the mini-edge server output storage unit 192 to the in-vehicle/exterior cooperation unit 152 as well as the selection unit 158. transfer through.
  • the in-vehicle/outside cooperation unit 152 operates in the same manner as in the normal mode to provide driving support.
  • Mini edge server 188 A program that implements the mini-edge server 188 has the following control structure. Referring to FIG. 12, this program collects sensor data from the sensors of the surrounding vehicles determined as the data collection vehicle and the own vehicle in step 700, and analyzes the sensor data collected in step 700 to generate a dynamic map. and a step 704 of storing the dynamic map built in step 702 in the mini edge server output store 192 shown in FIG. 2 and returning control to step 700 .
  • the mini-edge server 188 periodically executes this program during its operation. To end the processing of the mini-edge server 188, the processing unit is directly instructed to end the execution of the program.
  • the alternative server vehicle is selected mainly according to the specifications of the vehicle and the dynamic state of the hardware of the in-vehicle device at the time of determination. Specs are static information, but dynamic state literally always changes. Therefore, even if a vehicle that has sufficient performance and dynamic state margin as a substitute server vehicle at the time of selection of the substitute server vehicle, the dynamic state may change due to changes in traffic conditions or execution of some processing in the vehicle. may change. Depending on this change, it may not be possible to satisfy the conditions of having sufficient performance and dynamic state as an alternative server vehicle.
  • the vehicle notifies the edge server 62 of the state change of the vehicle.
  • the cooperative control ECU 94 periodically runs a program for that purpose.
  • this program includes step 750 of waiting until the execution cycle of the determination process comes or until it is detected that some state change has occurred in the vehicle-mounted device and each vehicle-mounted ECU.
  • the program further collects information, ie, dynamic state, of the host vehicle at step 752, and based on the information about the dynamic state collected at step 752, automatically and step 754 for branching the flow of control according to whether the car satisfies the conditions for being an alternate server vehicle.
  • the program further responds to a negative determination in step 754 by step 756 transitioning the vehicle operating mode to a low load operating mode, and notifying the edge server 62 of the new operating mode to control control. and step 758 returning to 750 . Control immediately returns to step 750 when the determination at step 754 is affirmative.
  • the edge server 62 appropriately sorts the data received by the communication device 350 when the communication device 350 communicates with the outside according to the contents thereof. That is, the communication device 350 supplies the center data from the data collection vehicles and infrastructure sensors to the dynamic map creation section 362, and the vehicle information from each vehicle within the management area to the vehicle management section 354, respectively.
  • the dynamic map creation unit 362 creates a dynamic map at regular intervals by analyzing the received data and stores it in the dynamic map storage unit 364 . As a result, the dynamic map is updated to the latest map at regular intervals.
  • the vehicle management unit 354 updates the vehicle database that constitutes the vehicle information storage unit 356 based on the vehicle information from the vehicle from the area managed by the edge server 62 . As a result, the vehicle information stored in the vehicle information storage unit 356 is updated to the latest information at regular intervals.
  • the alternative server vehicle list creation unit 358 periodically creates an alternative server vehicle list based on the vehicle information stored in the vehicle information storage unit 356.
  • the specifications of each vehicle and the dynamic state of each vehicle are used for this creation. It should be noted that the vehicle information in the vehicle information storage unit 356 is also updated when the vehicle operation mode is changed due to the dynamic state, and is taken into account in creating the alternative server vehicle list.
  • the alternative server vehicle list storage section 360 stores the alternative server vehicle list created by the alternative server vehicle list creating section 358 .
  • an instruction to determine whether or not a substitute server vehicle is available is transmitted to each vehicle within the area managed by the edge server 62 (step 402), and the response is received. (Step 406). Based on the data obtained as a result, for each intersection area in step 408, an alternative server vehicle list for that intersection area is determined (step 420) and stored in the alternative server vehicle list storage unit 360 shown in FIG. 5 (step 422). ).
  • alternative server vehicle list addition unit 366 periodically reads the dynamic map stored in dynamic map storage unit 364 to display the alternative map stored in alternative server vehicle list storage unit 360 .
  • the server vehicle is added and supplied to the transmission unit 368 .
  • the transmission unit 368 transmits the dynamic map to which the substitute server vehicle list is added by the substitute server vehicle list addition unit 366 to the destination vehicle determined based on the vehicle information stored in the vehicle information storage unit 356. Send periodically via
  • Vehicle 60 operates as follows.
  • a Normal Mode Referring to FIG. 2, in the normal mode, the cooperation operation determination unit 182 of the in-vehicle device 90 controls the selection unit 158 so that the in-vehicle/outside cooperation unit 152 receives data from the in-vehicle communication device 154. Data from the cooperation unit 152 is transmitted to the edge server 62 via the external communication device 154 . Mini edge server 188 does not work.
  • step 450 when the update cycle of the dynamic map comes in step 450, the dynamic map is received from the edge server 62 in step 452. Receipt of the dynamic map is usually successful. Therefore, the determination at step 454 becomes affirmative, and at step 456, the information possessed by the vehicle and the received dynamic map are integrated and utilized for driving support. The determination at step 458 is negative and control returns to step 450 . At this time, the substitute server vehicle list added to the dynamic map is separated and stored in a predetermined storage device.
  • the in-vehicle/external cooperation unit 152 receives information from each sensor mounted in the vehicle via the in-vehicle gateway 150 and periodically transmits the information to the edge server 62 via the in-vehicle communication device 154 .
  • Transfer mode In order to enter transfer mode, it is a condition to receive dynamic map distribution requests from other vehicles in normal mode.
  • the communication state detector 180 shown in FIG. 2 detects it and saves the distribution request in the distribution request buffer 184 .
  • vehicle 60 is in transfer mode.
  • two cases ie, the case where the vehicle 60 is listed in the alternative server vehicle list and the case where it is not listed, will be described.
  • the processes of steps 650, 652, and 654 are executed. Assuming that the determination at step 654 is affirmative, the determination at step 656 is negative (that is, it is determined that the operation mode is the transfer mode), and the driving support information storage unit 156 of FIG. is read from the driving support information storage unit 156 and transferred to the vehicle that has transmitted the distribution request.
  • step 500 shown in FIG. 8 is executed. Since the mini-edge server 188 has not been started immediately after the communication is interrupted, the determination in step 500 is negative, and step 502 is executed. Under the conditions assumed here, the determination at step 502 is affirmative, steps 504 and 506 are executed, and the mini-edge server 188 is activated.
  • step 604 the processing of FIG. 10 is executed in parallel. This processing is executed for a plurality of delivery requests, and all of the delivery requests are accumulated in the delivery request buffer 184 . At some point, the determination in step 602 becomes affirmative, and the process of step 604 is executed to set the operating mode of vehicle 60 to the delivery mode.
  • the processing in FIG. 11 is also executed in parallel. Normally, the determination at step 650 is negative, so the delivery process is not executed. However, when the edge server 62 fails, dynamic map distribution requests to the vehicle 60 are concentrated. Therefore, the determination at step 650 is affirmative.
  • the transfer unit 186 sequentially reads the distribution requests from the distribution request buffer 184. If the condition of step 654 is satisfied, steps 656 to 658 are executed, and the dynamic map generated by the mini-edge server 188 is read from the distribution request. delivered to the sender. This process is repeated, and the distribution requests accumulated in the transfer unit 186 are processed in order.
  • Step 654 is provided to address such issues.
  • the edge server 62 When the edge server 62 returns to a normal state and communication between the vehicle 60 and other vehicles and the edge server 62 is restored, the route of steps 452, 454, 456, 458, and 460 in FIG. 7 is executed. , the mini-edge server 188 is stopped. At subsequent step 462, the operation mode is changed to the normal mode, and the vehicle 60 returns to normal operation.
  • the edge server 62 creates a substitute server vehicle list in advance and distributes it to each vehicle together with the dynamic map.
  • the vehicle sends a dynamic map distribution request to the vehicle determined according to the substitute server vehicle list. Therefore, each vehicle can obtain the dynamic map more quickly than when searching for an alternative server starts after communication is lost.
  • the edge server 62 fails and communication with each vehicle is interrupted, the vehicles listed in the substitute server vehicle list can quickly start operating as a substitute server based on the delivery request arrival status. . This has the effect of shortening the time required to determine a substitute server and reducing the impact of a failure that occurs in the edge server 62 .
  • the edge server 62 Even if the edge server 62 is normal, if the vehicle cannot communicate with the edge server 62 for some reason, the dynamic map can be quickly distributed by requesting the vehicle listed in the alternative server vehicle list to distribute the dynamic map. Available. If the number of such vehicles is limited, the necessary information can be provided to the vehicles that need it with minimal processing without the need to activate a substitute server (mini-server).
  • 2nd Embodiment 1 Configuration (1) Management Area
  • an alternative server vehicle list is created and distributed for each intersection area managed by the edge server 62 . All vehicles within the same region use the same alternate server vehicle list. Also, vehicles in different regions use different alternate server vehicle lists.
  • intersection area is divided or a plurality of intersection areas are integrated depending on how many vehicles are present in each intersection area.
  • FIG. 14 schematically shows a management area 800 managed by the edge server 810 according to the second embodiment.
  • the management area 800 is divided into areas 820 , 822 and 824 .
  • Region 820 borders on intersection 830 .
  • Region 822 includes intersection 830 .
  • Region 824 includes both intersection 832 and intersection 834 .
  • the management area 800 was originally divided into an area including the intersection 830 (areas 820 and 822), an area including only the intersection 832, and an area including only the intersection 834. However, the reason why the management area 800 is divided as shown in FIG. This is because the vehicle does not exist. The reason why the area including the intersection 830 is divided into the area 820 and the area 822 is that there are many vehicles. . Such division and integration of areas are performed dynamically according to the number of vehicles present near each intersection.
  • graph 850 represents the relationship between the areas including intersection 830, intersection 832, and intersection 834 of FIG. 14 when these areas are provided separately.
  • the graph 850 includes a node 860 corresponding to the area containing the intersection 830, a node 862 corresponding to the area containing the intersection 832, and a node 864 corresponding to the area containing the intersection 834.
  • Each node has, as node information, a node identifier (node ID), coordinates defining an area corresponding to the node, its area, and the number of vehicles existing in that area.
  • node ID a node identifier
  • the area divided in this way is represented by a graph, for example, if the number of vehicles at node 860 is greater than a threshold value, it can be easily determined to divide the area into two or more. Such processing amounts to splitting the node 860 into two nodes 880 and 882 that are joined together by a new edge. Also, if the total number of vehicles in two adjacent nodes is less than or equal to the threshold, these two nodes can be merged into a new node 884 . In this case, the edge other than the edge connecting the node 862 and the node 864 should be handed over to the node 884 . A new graph 870 is thus obtained.
  • FIG. 16 shows the configuration of an edge server 810 according to the second embodiment.
  • the edge server 810 shown in FIG. 16 differs from the edge server 62 according to the first embodiment shown in FIG. and, in place of the alternative server vehicle list creation unit 358 shown in FIG. 5, an alternative server vehicle list creation unit 902 is included that creates an alternative server vehicle list separately for each divided area to be divided and integrated. . Otherwise, edge server 810 has the same configuration as edge server 62 .
  • FIG. 17 shows the control structure of a program that implements the functions of the area management unit 900 described above.
  • this program performs step 920 for creating an initial graph according to initial information prepared in advance, and for each node of the graph created in step 920, by collecting information from the corresponding region. and Step 922 of updating node information.
  • the program further includes step 924 of performing step 926, described below, for each edge of the graph whose node information was updated in step 922, and, after step 924, performing step 930, described below, for each node. and step 932 of creating an alternate server vehicle list for each node and returning control to step 922 after the processing of step 928 is complete.
  • Step 926 includes step 940 for branching control flow according to whether the number of vehicles at either end node of the target edge is less than a threshold value; and a step 942 for branching the control flow according to whether or not the area of the node is within the communication range between the vehicles existing therein.
  • Step 926 further includes step 944 that, in response to the determination of step 942 being affirmative, removes the target edge, merges the end nodes, and terminates step 926 . If the determination at step 940 is negative and if the determination at step 942 is negative, the nodes are not merged and step 926 ends.
  • Step 930 determines whether or not the number of vehicles at the target node exceeds the threshold value, and step 950 for branching the flow of control according to the determination. and a step 952 that splits the nodes so that , and provides a new edge between them, ending step 930 . If the determination at step 950 is negative, the node is not split and step 930 ends.
  • the divided area in the area managed by the edge server 810 is dynamically divided into two divided areas, or two For example, two divided areas are dynamically integrated. By repeating this process, a plurality of divided areas are dynamically integrated into one divided area, or one divided area is divided into a plurality of divided areas.
  • the dynamic map distribution process and the substitutive server vehicle list creation process for each divided area performed by the edge server 810 are the same as in the first embodiment, only because the target divided area is dynamically changed.
  • the number of vehicles in each divided area can be leveled. Even when the edge server 810 cannot distribute the dynamic map for some reason, the alternative server vehicle list is distributed in advance, so the dynamic map distribution by the alternative server vehicle in each divided area can be started promptly. In addition, it is possible to prevent a situation in which an excessive load is applied to some of the alternative server vehicles.
  • the edge server 62 of the first embodiment and the edge server 810 of the second embodiment can be realized by normal computer hardware, except that the communication function is essential. Further, for example, the in-vehicle device 90 of the vehicle 60 and the cooperative control ECU 94 can be realized by an information processing device mainly including a processor, which is normally used.
  • FIG. 18 shows a hardware block diagram of a computer for realizing the edge server 62, for example.
  • the configuration of the edge server 810 is the same.
  • FIG. 18 is a hardware block diagram of a computer system that implements each of the above embodiments.
  • the edge server 62 includes a computer 970 having a DVD (Digital Versatile Disc) drive 1002, and a keyboard 974, mouse 976, and monitor 972, all connected to the computer 970, for interacting with the user. including.
  • DVD Digital Versatile Disc
  • keyboard 974, mouse 976, and monitor 972 all connected to the computer 970, for interacting with the user.
  • keyboard 974, mouse 976, and monitor 972 all connected to the computer 970, for interacting with the user.
  • keyboard 974, mouse 976, and monitor 972 all connected to the computer 970, for interacting with the user.
  • keyboard 974 Digital Versatile Disc
  • mouse 976 mouse 976
  • monitor 972 all connected to the computer 970, for interacting with the user.
  • these are examples of configurations for when user interaction is required, and general hardware and software (such as touch panels, voice input, and general pointing devices) that can be used for user interaction can be used. is also available.
  • the computer 970 includes a CPU 990 , a GPU (Graphics Processing Unit) 992 , and a bus 1010 connected to the CPU 990 , the GPU 992 and the DVD drive 1002 .
  • the computer 970 is further connected to a bus 1010 and has a ROM (Read-Only Memory) 996 for storing the boot-up program of the computer 970, etc., and a bus 1010 for instructions constituting the program, system programs, work data, etc. and a RAM (Random Access Memory) 998 that stores the .
  • Computer 970 further includes SSD (Solid State Drive) 1000 which is non-volatile memory connected to bus 1010 .
  • the SSD 1000 is for storing programs executed by the CPU 990 and the GPU 992, data used by the programs executed by the CPU 990 and the GPU 992, and the like.
  • the computer 970 is further detachable with a network I/F (Interface) 1008 that provides connection to a network 986 that enables communication with in-vehicle devices and various infrastructure sensors, and a USB (Universal Serial Bus) memory 984. It includes a USB memory 984 and a USB port 1006 that provides communication with components within computer 970 .
  • Computer 970 further includes audio I/F 1004 connected to microphone 982 and speaker 980 and bus 1010 .
  • the audio I/F 1004 reads audio signals, video signals, and text data generated by the CPU 990 and stored in the RAM 998 or the SSD 1000 in accordance with instructions from the CPU 990, performs analog conversion and amplification processing, drives the speaker 980, and outputs signals from the microphone 982. It has a function of digitizing the analog audio signal and storing it in an arbitrary address specified by the CPU 990 in the RAM 998 or SSD 1000 .
  • the computer programs and the like that implement each function of the edge server 62 and the edge server 810 are all transmitted via the SSD 1000, RAM 998, DVD 978 or USB memory 984 shown in FIG.
  • the data is stored in a storage medium or the like of an external device (not shown) connected via an external device.
  • these data and parameters are written to the SSD 1000 from the outside, for example, and loaded into the RAM 998 when the computer 970 is running.
  • a computer program for operating this computer system to realize the functions of edge server 62 and edge server 810 and their components is stored on DVD 978 attached to DVD drive 1002 and transferred from DVD drive 1002 to SSD 1000. be done.
  • these programs are stored in USB memory 984 , and USB memory 984 is attached to USB port 1006 to transfer the programs to SSD 1000 .
  • this program may be transmitted to computer 970 via network 986 and stored on SSD 1000 .
  • the program is loaded into the RAM 998 at the time of execution.
  • the source program may be input using the keyboard 974, monitor 972 and mouse 976, and the compiled object program may be stored in the SSD 1000.
  • FIG. In the case of a script language, a script input using the keyboard 974 or the like may be stored in the SSD 1000 .
  • a program running on a virtual machine it is necessary to install a program functioning as the virtual machine on the computer 970 in advance. Since processing as a server involves a large amount of calculation, it is preferable to implement each part of the embodiments of the present disclosure as an object program consisting of computer native code rather than a scripting language.
  • the CPU 990 reads the program from the RAM 998 according to the address indicated by the internal register called a program counter (not shown) and interprets the instructions. Further, the CPU 990 reads data necessary for executing the instruction from the RAM 998, SSD 1000, or other device according to the address specified by the instruction, and executes the processing specified by the instruction. The CPU 990 stores the execution result data in an address specified by the program, such as a RAM 998, SSD 1000, a register in the CPU 990, or the like. At this time, the value of the program counter is also updated by the program. Computer programs may be loaded directly into RAM 998 from DVD 978, from USB memory 984, or over a network. Among the programs executed by the CPU 990, some tasks (mainly numerical calculations) are dispatched to the GPU 992 according to instructions included in the programs or according to analysis results when the CPU 990 executes the instructions.
  • a program for realizing the function of each unit according to each of the embodiments described above by the computer 970 includes a plurality of instructions written and arranged to operate the computer 970 to realize those functions. Some of the basic functions required to execute this instruction are provided by an operating system (OS) or third party programs running on computer 970 or modules of various toolkits installed on computer 970 . Therefore, this program does not necessarily include all the functions necessary to implement the system and method of this embodiment.
  • the program may be run either by statically linking in instructions, or at run time, appropriate functions or functions of a "programming tool kit" in a controlled manner to produce the desired result. It is only necessary to include only instructions for executing the operations of the above-described devices and their constituent elements by calling them explicitly. The manner in which computer 970 operates to do so is well known and will not be repeated here.
  • the GPU 992 is capable of parallel processing, and can execute a large amount of calculations associated with server processing in parallel or in a pipeline fashion.
  • Parallel computational elements discovered in a program for example, at program compilation time, or parallel computational elements discovered at program execution time, are dispatched from CPU 990 to GPU 992 for execution, and the results are either sent directly or stored in RAM 998 at any time. is returned to the CPU 990 via a predetermined address, and assigned to a predetermined variable in the program.
  • FIG. 19 exemplarily shows the sensor arrangement of the vehicle 60 and the configuration of the network.
  • a vehicle 60 includes a network 1200 having a gigabit class transmission speed to which the above-described in-vehicle device 90 and cooperative control ECU 94 are connected, and a front right, front left, rear right, and left sides of the vehicle 60. It includes a sensor unit 1280, a sensor unit 1282, a sensor unit 1284 and a sensor unit 1286 respectively mounted on the rear.
  • Each of sensor unit 1280, sensor unit 1282, sensor unit 1284, and sensor unit 1286 includes a millimeter wave radar, camera, and LiDAR.
  • the in-vehicle network 1200 includes four gigabit-class network switches 1292, 1294, 1296 and 1298 to which sensors belonging to the same sensor unit are respectively connected.
  • In-vehicle network 1200 further includes a first multi-gig switch 1300 bridging between two network switches 1292 and 1294 at the front of the vehicle, and a first multi-gig switch 1300 bridging between two network switches 1296 and 1298 at the rear of the vehicle. and a second multi-gigaswitch 1302 connected to the multi-gigaswitch 1300 .
  • the in-vehicle device 90 is connected to the network switch 1292 and the cooperative control ECU 94 is connected to the network switch 1294 .
  • a TCU (Telematics Control Unit) 1290 corresponding to the external communication device 154 shown in FIG.
  • sensor unit 1280, sensor unit 1282, sensor unit 1284, and sensor unit 1286 are arranged at different positions on the vehicle. Therefore, the value of the sensor data from these sensor units may vary depending on the situation of the vehicle, as will be described later. In addition, the amount of data from various sensors, especially from cameras, is large. Although not shown in FIG. 19, the vehicle is provided with a large number of ECUs as will be described later with reference to FIG. All of these ECUs communicate with the in-vehicle device 90 via the network 1200 . As such, communications over network 1200 can sometimes be delayed. This delay is a consideration when vehicle 60 functions as an alternate server vehicle.
  • FIG. 20 is a block diagram showing a schematic hardware configuration of the in-vehicle device 90.
  • the in-vehicle device 90 includes an HMI (Human-Machine Interface) controller 1332 connected to an in-vehicle LAN (Local Area Network), and an external communication controller 1330 connected to the in-vehicle LAN like the HMI controller 1332. including.
  • the in-vehicle device 90 further includes a fifth generation mobile communication system (so-called "5G"), an intelligent transport system (so-called "ITS (Intelligent Transport Systems)”), and a GPS (Global Positioning System) connected to the external communication controller 1330.
  • 5G fifth generation mobile communication system
  • ITS Intelligent Transport Systems
  • GPS Global Positioning System
  • the in-vehicle device 90 further includes an automatic driving controller 1334 connected to the HMI controller 1332 and the external communication controller 1330 via an in-vehicle LAN, and a driving system controller 1336 connected to the in-vehicle LAN.
  • a monitor 1342 and a plurality of ECUs 1344 and 1346 are connected to the HMI controller 1332 .
  • a millimeter-wave radar 1312, an onboard camera 1314, a LiDAR 1316, and an automatic driving ECU 1348 are connected to the automatic driving controller 1334.
  • the running system controller 1336 is connected to an ECU 1350, an ECU 1352, an ECU 1354, an ECU 1356, and the like for controlling the running of the vehicle.
  • Both the ECU and the in-vehicle device 90 are substantially computers, and include a processor (not shown) and a dedicated memory therein. These processors and memories can also share various processes in cooperation with the in-vehicle device 90 to cause the vehicle 60 to function as an alternative server vehicle under control from the in-vehicle device 90 . Therefore, the operating status of those processors and the usage status of memory should also be considered in making a determination as to whether or not it can function as an alternative server vehicle.
  • the mini-edge server 188 is started only in the distribution mode, and is stopped when the distribution mode ends.
  • this disclosure is not limited to such embodiments.
  • the mini-edge server 188 may be activated at all times, and may operate immediately in place of the edge server when the delivery mode is entered.
  • the mini edge server 188 can be activated only in the distribution mode, but the mini edge server initialization unit 190 can be operated periodically. In this case, it is possible to omit the initialization work when the mini-edge server 188 is activated, and shorten the time until it functions as a substitute server vehicle that substitutes for the edge server.
  • the alternative server vehicle list includes only those that can operate as distribution servers. However, this disclosure is not limited to such embodiments. In addition to those that can be delivered, those that can simply act as a transfer server may be included. Alternatively, a list of distribution servers and a list of transfer servers may be separately created as an alternative server vehicle list, and both may be transferred. In this case, the vehicle that has lost communication with the edge server may first select the vehicle from the list of the transfer server, request the transfer of the dynamic map, and access the distribution server if the dynamic map is not transferred. In this way, it is possible to prevent requests from converging on the alternative server vehicle when transfer is sufficient.
  • vehicles that have lost communication with the edge server send distribution requests in order from the top of the alternative server vehicle list.
  • this disclosure is not limited to such embodiments.
  • the order in which vehicles listed in the alternative server vehicle list are selected may be random. By doing so, it is possible to avoid concentration of delivery requests on the vehicle listed at the top of the alternative server vehicle list.
  • the alternate server vehicle list may be randomly permuted prior to vehicle selection.
  • the alternative server vehicle list may be remade so that the vehicles have different orders.
  • a dynamic map is transmitted as a driving support service.
  • this disclosure is not limited to such embodiments.
  • this disclosure can also be applied to driving support services that transmit traffic information, road conditions, weather or event information, etc. to vehicles. That is, the driving support information is not limited to dynamic maps, and includes any information as long as it is information for driving support.

Landscapes

  • Physics & Mathematics (AREA)
  • General Physics & Mathematics (AREA)
  • Traffic Control Systems (AREA)

Abstract

車載装置は、無線通信装置と、無線通信装置により外部サーバから受信した運転支援情報を用いて車両の運転支援を行うための運転支援装置と、他の車載装置から運転支援情報の配信要求を受信したことに応答して、車載装置が外部サーバを代替して動作すべきか否かについての判定を行う動作判定部と、動作判定部による判定が肯定であるときに、車載装置が利用可能な車両の運転支援情報を無線通信装置により他の車載装置に送信する支援情報送信装置とを含む。

Description

車載装置、方法、コンピュータプログラム、運転支援サーバ及び運転支援方法
 この開示は、車載装置、方法、コンピュータプログラム、運転支援サーバ及び運転支援方法に関する。この出願は2021年7月2日出願の日本出願第2021-110815号に基づく優先権を主張し、前記日本出願に記載された全ての記載内容を援用するものである。
 車両の運転を支援するために、いわゆる路車協調によるコネクテッドサービスが提供されつつある。例えば、路側に設けたカメラ、LiDAR(Light Detection And Ranging)等、いわゆるインフラセンサ及び車両からの情報を用いて作成した動的地図に基づく交差点での走行支援等である。動的地図の作成処理は、車両が走行している地域のインフラセンサ及び道路上の車両との高速な通信が行えるように配置されたエッジサーバで、インフラセンサ及び車両から収集したデータに基いて行われる。動的地図は各車両に配置され、各車両に搭載された車載装置が、各車両が備えた機能に応じて動的地図を利用した運転支援を行う。
 こうした路車協調システムの場合、サーバとの通信が途絶したり、サーバが故障したりすると、車両は動的地図を入手できない。その結果、各車両での運転支援が行えなくなるという問題がある。そのため、サーバとの通信途絶又はサーバの故障が発生したときの対策が必要である。
 こうした問題を解決するための1つの提案が後掲の特許文献1に開示されている。特許文献1に開示されている技術においては、車両とサーバとの通信が途絶したり、サーバから車両への情報が欠落したりしたときのために、サーバとの間の通信路を冗長化する。その目的で、特許文献1に開示の技術では、いわゆる車々間通信を含む複数の通信装置が車両に設けられる。そして、車両とサーバとの通信が途絶したときには、その車両に搭載された車載装置がサーバからの通信データを転送できる他車両を探索し、車々間通信で受信し運転支援に利用する。他車両から探索信号を受信した周辺車両は、サーバからの通信データの転送が可能か否かを判定し、可能なら通信を行う。周辺車両は、通信が不可である場合にもその旨の通信を探索信号の送信元の車両に送信する。
特開2020―162031号公報
 本開示の第1の局面に係る車載装置は、無線通信装置と、無線通信装置を介して外部サーバから受信した運転支援情報を用いて車両の運転支援を行うための運転支援装置とを含む車載装置であって、さらに、他の車載装置から運転支援情報の配信要求を受信したことに応答して、前記車載装置が外部サーバを代替して動作すべきか否かについての判定を行う動作判定部と、動作判定部による判定が肯定であるときに、自己が利用可能な車両の運転支援情報を無線通信装置により他の車載装置に送信する支援情報送信装置とを含む。
 本開示の第2の局面に係る車載装置を動作させる方法は、コンピュータが、無線通信装置を介して外部サーバから受信した運転支援情報を用いて車両の運転支援を行うステップと、コンピュータが、他の車載装置から運転支援情報の配信要求を受信したことに応答して、コンピュータが外部サーバを代替して動作すべきか否かについての判定を行うステップと、コンピュータが、判定を行うステップにおける判定が肯定であるときに、コンピュータが利用可能な運転支援情報を無線通信装置により他の車載装置に送信するステップとを含む。
 本開示の第3の局面に係るコンピュータプログラムは、無線通信装置に接続されるコンピュータを、無線通信装置を介して外部サーバから受信した運転支援情報を用いて車両の運転支援を行うための運転支援装置と、他の車載装置から運転支援情報の配信要求を受信したことに応答して、コンピュータが外部サーバを代替して動作すべきか否かについての判定を行う動作判定部と、動作判定部による判定が肯定であるときに、コンピュータが利用可能な支援情報を無線通信装置により他の車載装置に送信する支援情報送信装置として機能させる。
 本開示の第4の局面に係る運転支援サーバは、管理領域内の運転支援情報を作成し当該管理領域内の車両に送信する運転支援サーバであって、管理領域の交通状態を検出するセンサからのセンサデータを受信し、運転支援情報を作成する運転支援情報作成部と、管理領域内に存在する車両に関する車両情報を収集し、運転支援サーバの代替サーバとして動作可能な車両のリストである代替サーバ車両リストを作成する代替サーバ車両リスト作成部と、運転支援情報に代替サーバ車両リストを付加して車両に送信する送信装置とを含む。
 本開示の第5の局面に係る運転支援方法は、管理領域内の運転支援情報を作成し当該管理領域内の車両に送信するための運転支援サーバを含む運転支援システムにおける運転支援方法であって、コンピュータが、管理領域の交通状態を検出するセンサからのセンサデータを受信し、運転支援情報を作成するステップと、コンピュータが、管理領域内に存在する車両に関する車両情報を収集し、運転支援サーバの代替サーバとして動作可能な車両のリストである代替サーバ車両リストを作成するステップと、コンピュータが、運転支援情報に代替サーバ車両リストを付加して車両に送信するステップとを含む。
 この発明の上記および他の目的、特徴、局面及び利点は、添付の図面と関連して理解されるこの発明に関する次の詳細な説明から明らかとなるであろう。
図1は、この開示の実施形態に係る運転支援システムの構成を示す図である。 図2は、この開示の実施形態に係る車載装置の機能的構成を示すブロック図である。 図3は、図2に示すミニエッジサーバの機能的構成を示すブロック図である。 図4は、図2に示すミニエッジサーバ初期化部の機能的構成を示すブロック図である。 図5は、図1に示すエッジサーバの機能的構成を示すブロック図である。 図6は、代替サーバが実行するプログラムのフローチャートである。 図7は、図1に示す車載装置が実行するプログラムのフローチャートである。 図8は、図1に示す車載装置が実行するプログラムのフローチャートである。 図9は、図2及び図4に示すミニエッジサーバ初期化部を実現するプログラムのフローチャートである。 図10は、図1に示す連携制御ECU(Electronic Control Unit)が実行するプログラムのフローチャートである。 図11は、図2に示す転送部が実行するプログラムのフローチャートである。 図12は、図2及び図3に示すミニエッジサーバを実現するプログラムのフローチャートである。 図13は、図1に示す連携制御ECUが実行するプログラムのフローチャートである。 図14は、本開示の第2実施形態を説明するための図である。 図15は、第2実施形態において対象領域を決定するためのグラフを示す図である。 図16は、第2実施形態におけるエッジサーバの機能的構成を示すブロック図である。 図17は、第2実施形態においてエッジサーバが実行するプログラムのフローチャートである。 図18は、第1実施形態及び第2実施形態におけるエッジサーバのハードウェア構成を示すブロック図である。 図19は、第1実施形態及び第2実施形態における車載装置を搭載した車両におけるネットワーク構成を示すブロック図である。 図20は、車載装置の概略ハードウェア構成を示すブロック図である。
 [この開示が解決しようとする課題]
 特許文献1に記載の技術では、車両は、サーバとの通信が途絶してから切り替え先の車両を探索する。そのため、動的地図を共有するようなリアルタイム性の高い運転支援に特許文献1に記載の技術を適用することは難しい。そもそもサーバが故障したりしたときには運転支援情報がどの経路からも入手できなくなるという問題もある。したがって、リアルタイム性が高く、可能な限り運転支援情報を入手できるような技術に対する需要が存在する。
 この開示は、リアルタイム性が高く、可能な限り運転支援情報を入手できるような車載装置、方法、コンピュータプログラム、運転支援サーバ及び運転支援方法を提供することを目的とする。
 [この開示の効果]
 この開示によると、リアルタイム性が高く、可能な限り運転支援情報を入手できるような車載装置、方法、コンピュータプログラム、運転支援サーバ及び運転支援方法を提供できる。
 [本開示の実施形態の説明]
 以下の説明及び図面では、同一の部品には同一の参照番号を付してある。したがって、それらについての詳細な説明は繰返さない。なお、以下の開示の少なくとも一部を任意に組合せてもよい。
 (1)本開示の第1の局面に係る車載装置は、無線通信装置と、無線通信装置を介して外部サーバから受信した運転を支援するための支援情報を用いて車両の運転支援を行うための運転支援装置とを含む車載装置であって、他の車載装置から支援情報の配信要求を受信したことに応答して、車載装置が外部サーバを代替して動作すべきか否かについての判定を行う動作判定部と、動作判定部による判定が肯定であるときに、車載装置が利用可能な車両の支援情報を無線通信装置により他の車載装置に送信する支援情報送信装置とを含む。
 車載装置が外部サーバから支援情報を受信しているときに、その通信が途絶すると、車載装置が外部サーバを代替して動作すべきか否かを動作判定部が判定し、動作すべきと判定したときには、支援情報送信装置が他の車両に車載装置の利用可能な支援情報を送信する。外部サーバとの通信ができない他の車両が、この車両から送信される支援情報を用いて運転支援を行うことができる。その際、予めこの車両がサーバとして動作できるか否かを探索する必要はない。その結果、外部サーバに障害が発生したときでも、直ちに多くの車両で運転支援を継続できる。
 (2)運転支援装置が外部サーバから受信する支援情報は、運転支援情報と、代替サーバとして動作可能な車両のリストとを含み、動作判定部は、リストを照会し、車載装置を搭載した車両が当該リストに記載されているか否かにより、車載装置が外部サーバを代替して動作すべきか否かについての判定を行うリスト照会部を含んでもよい。
 予め車両のリストが支援情報として各車両に配布されている。そのため、外部サーバとの通信が途絶した車両は、他のどの車両と通信すればよいかを探索する必要なく、このリストを用いて、必要な支援情報を得るための車両を直ちに特定できる。
 (3)車載装置はさらに、無線通信装置を介して外部サーバから支援情報が受信可能か否かについての判定を行う受信可否判定部を含み、支援情報送信装置は、リスト照会部による判定が肯定であり、かつ受信可否判定部による判定が肯定であるときに、他の車載装置から支援情報の配信要求を受信したことに応答して、外部サーバから受信した運転支援情報を他の車載装置に転送する転送装置を含んでもよい。
 自己が外部サーバから支援情報を受信可能であるにもかかわらず、他の車両がこの車両に運転支援情報の配信を要求していることがある。これは、その車両のみが外部サーバと通信できないという何らかの障害が発生したことを意味する。この開示に係る車載装置は外部サーバとの通信により支援情報を受信可能なので、その運転支援情報を他の車両に転送できる。その結果、何らかの通信障害が発生した車両も直ちに運転支援情報を入手できる。
 (4)車載装置は、他の車両から受信する配信要求を先入れ先出し方式で格納するバッファをさらに含み、転送装置は、バッファから配信要求を読み出し、読み出した配信要求の受信時刻から現在時刻までの経過時間がしきい値時間より長ければ配信要求を無視してもよい。
 配信要求が多数集中したときには、それらを処理するのにある時間を要する場合がある。配信要求を受信してからある時間が経過したときには、既にその車両では他の車両から運転支援情報の転送を受けている可能性がある。したがってそうした場合、その配信要求を無視することで通信トラヒックを削減し、リアルタイムでの応答に重点を置くことができる。
 (5)車載装置はさらに、車載装置が利用可能な情報を用いて運転支援情報を構築する内部サーバを含み、支援情報送信装置は、リスト照会部による判定が肯定であり、かつ受信可否判定部による判定が否定であるときに、外部から支援情報の配信要求を受信したことに応答して、内部サーバを初期化し起動するサーバ初期化部と、支援情報の配信要求を他の車載装置から受信したことに応答して、内部サーバの生成した運転支援情報を当該他の車載装置に配信する配信装置とを含んでもよい。
 外部サーバとの通信が可能でかつ車載装置を搭載した車両がリストに記載されている場合には、車載装置が代替サーバとして動作する。サーバ初期化部が内部サーバを起動し、内部サーバが入手可能な情報を用いて運転支援情報を生成する。他の車両から支援情報の配信要求を受信したときには、生成された運転支援情報を配信装置が速やかに配信できる。その結果、外部サーバに何らかの障害が発生したときにも、多くの車両が速やかに運転支援情報を入手できる。
 (6)車載装置は、他の車両から受信する配信要求を先入れ先出し方式で格納するバッファをさらに含み、配信装置は、バッファから配信要求を読み出し、読み出した配信要求の受信時刻から現在時刻までの経過時間がしきい値時間より長ければ配信要求を無視してもよい。
 配信要求が多数集中したときには、それらを処理するのにある時間を要する場合がある。配信要求を受信してからある時間が経過したときには、既にその車両では他の車両から運転支援情報の配信を受けている可能性がある。したがってそうした場合、その配信要求を無視することで通信トラヒックを削減し、リアルタイムでの応答に重点を置くことができる。
 (7)サーバ初期化部は、リスト照会部による判定が肯定であり、かつ受信可否判定部による判定が否定であるときに、直近の所定時間内に外部から所定のしきい値を超える数の複数の配信要求を受信したことに応答して、前記内部サーバを初期化し起動するようにしてもよい。
 配信要求が少ないときには外部サーバに障害が発生しているのか、特定の車両のみが外部サーバと通信できないのかを判定できない。一定時間の間に受信した配信要求の数がしきい値を超えれば、外部サーバに障害が発生していると判定できる。必要がないにもかかわらず内部サーバを起動するという無駄な処理を防止できる。
 (8)サーバ初期化部は、無線通信装置を介して通信可能な他の複数の車両の中から、複数の協調ノード候補を選択する協調ノード候補選択部と、内部サーバの機能を実現するための演算処理装置を選択する処理装置選択部と、選択された演算処理装置及び当該演算処理装置との通信に関する動的状態についての情報、及び外部との通信に関する動的状態についての情報を取得する動的状態情報取得部と、選択された協調ノード候補、及び取得された動的状態に基いて、少なくとも一つの協調ノードを選び、協調ノードから収集するセンサデータ種別、運転支援情報を配信する先である車両、及び運転支援情報の配信周期を決定する初期情報決定部と、初期情報決定部により決定された情報を内部サーバの記憶装置に転送する転送部とを含んでもよい。
 内部サーバを起動するときには、サーバ初期化部がそのときの状況に応じて内部サーバの動作条件を適切に設定する。その結果、内部サーバは最新の情報に基いて必要な運転支援情報を速やかに生成し各車両に配信できる。
 (9)車載装置は、定期的にサーバ初期化部を動作させるタイマをさらに含んでもよい。
 サーバ初期化部が定期的に動作する。内部サーバが運転支援情報に用いる情報は、そのたびに更新される。内部サーバが常に最新の情報に基いて運転支援情報を生成し配信するため、各車両は正確な運転支援情報を速やかに利用できる。
 (10)車載装置は、さらに、リスト照会部による判定が否定であり、かつ受信可否判定部による判定が否定であるときに、リストに記載されている車両の少なくとも一つに対して支援情報の配信要求を送信する要求送信装置を含んでもよい。
 自己が代替サーバとして動作する車両のリストに記載されていないときに、サーバとの通信が途絶した場合には、外部の車両から運転支援情報を入手する必要がある。予めリストが配信されているため、そのリストに記載されている少なくとも一つの車両に配信要求を送信することで、運転支援情報を速やかに入手できる。
 (11)要求送信装置は、リストの先頭から順番に、支援情報の返信があるまで配信要求を送信してもよい。
 リストに記載されている車両の中には、何らかの事情で内部サーバを起動できなかったり、多数の配信要求の処理に時間を要したりしている場合がある。そうしたときには運転支援情報を速やかに入手できない。そこで、リストに記載されている車両に順番に配信要求を送ることで、運転支援情報を配信可能な車両から運転支援情報を可能な限り早く入手できる。
 (12)要求送信装置は、配信要求の送信を開始するに先立って、リストをランダムに並べ替えてもよい。
 リストをランダムに並べ替えることにより、リストに記載されている一部の車両に配信要求が集中することが防止できる。その結果、リストに記載されている車両に負荷が分散され、どの車両も運転支援情報を速やかに入手できる。
 (13)要求送信装置は、リストからランダムに車両を選択して配信要求を送信してもよい。
 リストからランダムに車両を選択して配信要求を送信することにより、リストに記載されている一部の車両に配信要求が集中することが防止できる。その結果、リストに記載されている車両に負荷が分散され、どの車両も運転支援情報を速やかに入手できる。
 (14)車載装置は、外部サーバから車載装置の静的仕様と動的状態とに関する情報の送信を要求する情報配信要求を受信したことに応答して、車載装置の静的仕様又は動的状態、並びに当該車載装置において車載装置が利用可能な計算リソース又は通信リソースの静的仕様又は動的状態に関する情報を外部サーバに送信する情報送信装置をさらに含んでもよい。
 こうすることにより、外部サーバが代替サーバ車両のリストを作成する際に、適切な車両を選択し、適切なリストを作成して配信できる。静的仕様としては、例えば、車外との無線通信速度、車内ネットワークの通信帯域、関連ECUの処理能能力等がある。動的状態としては、例えば、車外との無線通信の疎通データ量、車内ネットワークの疎通データ量、ECUの負荷状態、ある一定以上の通信品質で通信可能な周辺車両の台数等がある。静的仕様及び動的状態は、一方のみを用いてもよいし、双方を用いてもよい。計算リソース及び通信リソースについても同様である。代替サーバ車両のリスト内の代替サーバ車両の順序は、特に限定されないが、例えば上記した静的仕様及び動的状態の各項目の組合せにより決定されるスコアが高いものが上位となるようにしてもよい。
 (15)車載装置は、定期的に、車載装置が外部サーバを代替して動作すべきか否かについての判定を行う動作定期判定部と、動作定期判定部による判定の結果が前回と異なるときに、当該判定の結果を外部サーバに通知する通知装置をさらに含んでもよい。
 車両の状態は常に変化するので、車両で利用可能な計算リソースの量も常に変化する。外部サーバがその変化に関する通知を受けることにより、外部サーバは代替サーバとして動作可能な車両のリストを適切にアップデートできる。その外部サーバから支援情報を受信している車両に配信されているリストも次の配信タイミングで適切にアップデートされる。その結果、各車両は外部サーバと通信できなくなっても代替サーバとして動作する車両から適切な支援情報を速やかに入手できる。
 (16)本開示の第2の局面に係る車載装置を動作させる方法は、コンピュータが、無線通信装置を介して外部サーバから受信した支援情報を用いて車両の運転支援を行うステップと、コンピュータが、他の車載装置から支援情報の配信要求を受信したことに応答して、コンピュータが外部サーバを代替して動作すべきか否かについての判定を行うステップと、コンピュータが、判定を行うステップにおける判定が肯定であるときに、コンピュータが利用可能な支援情報を無線通信装置により他の車載装置に送信するステップとを含む。
 車載装置が外部サーバから支援情報を受信しているときに、その通信が途絶すると、車載装置が外部サーバを代替して動作すべきか否かについての判定を行う。車載装置は、車載装置が外部サーバを代替して動作すべきと判定したときには、他の車両に車載装置の利用可能な支援情報を送信する。外部サーバとの通信ができない他の車両が、この車両から送信される支援情報を用いて運転支援を行える。その結果、外部サーバに障害が発生したときでも、直ちに多くの車両で運転支援を継続できる。
 (17)本開示の第3の局面に係るコンピュータプログラムは、無線通信装置に接続されるコンピュータを、無線通信装置を介して外部サーバから受信した支援情報を用いて車両の運転支援を行うための運転支援装置と、他の車載装置から支援情報の配信要求を受信したことに応答して、コンピュータが外部サーバを代替して動作すべきか否かについての判定を行う動作判定部と、動作判定部による判定が肯定であるときに、コンピュータが利用可能な支援情報を無線通信装置により他の車載装置に送信する支援情報送信装置として機能させる。
 車載装置が外部サーバから支援情報を受信しているときに、その通信が途絶すると、車載装置が外部サーバを代替して動作すべきか否かについての判定を動作判定部が行う。車載装置が、車載装置が動作すべきと判定したときには、支援情報送信装置が他の車両に車載装置が利用可能な支援情報を送信する。外部サーバとの通信ができない他の車両が、この車両から送信される支援情報を用いて運転支援を行うことができる。その結果、外部サーバに障害が発生したときでも、直ちに多くの車両で運転支援を継続できる。
 (18)本開示の第4の局面に係る運転支援サーバは、管理領域内での運転を支援する支援情報を作成し当該管理領域内の車両に送信する運転支援サーバであって、管理領域の交通状態を検出するセンサからのセンサデータを受信し、支援情報を作成する支援情報作成部と、管理領域内に存在する車両に関する車両情報を収集し、運転支援サーバの代替サーバとして動作可能な車両のリストである代替サーバ車両リストを作成する代替サーバ車両リスト作成部と、支援情報に代替サーバ車両リストを付加して車両に送信する送信装置とを含む。
 車載装置が運転支援サーバから支援情報を受信しているときに、その通信が途絶すると、各車両は運転支援サーバを代替して動作する車両を探索する必要がある。しかし運転支援サーバが代替サーバ車両リストを予め作成し、支援情報に付加して配信することにより、各車両ではどの車両から支援情報を入手すべきかを速やかに判定できる。その結果、運転支援サーバに障害が発生したときでも、直ちに多くの車両で支援情報を入手できる。
 (19)代替サーバ車両リスト作成部は、管理領域を複数の分割領域に分割し、当該複数の分割領域の各々について代替サーバ車両リストを作成する分割領域別リスト作成部を含み、送信装置は、複数の分割領域の各々について、支援情報に、当該分割領域のための代替サーバ車両リストを添付して、当該分割領域に存在する各車両に送信する領域別送信装置を含んでもよい。
 運転支援サーバが管理する領域を複数の分割領域に分割し、各分割領域について代替サーバ車両リストを作成し、分割領域ごとにその分割領域のための代替サーバ車両リストを配信する。各車両は、運転支援サーバとの通信が途絶したときには、この代替サーバ車両リストを用いることで支援情報を入手するためにどの車両に配信要求を送ればよいかを直ちに判定できる。その結果、運転支援サーバとの通信が途絶したような場合でも、各車両は支援情報を速やかに入手できる。
 (20)本開示の第5の局面に係る運転支援方法は、管理領域内の運転を支援するための支援情報を作成し当該管理領域内の車両に送信するための運転支援サーバを含む運転支援システムにおける運転支援方法であって、コンピュータが、管理領域の交通状態を検出するセンサからのセンサデータを受信し、支援情報を作成するステップと、コンピュータが、管理領域内に存在する車両に関する車両情報を収集し、運転支援サーバの代替サーバとして動作可能な車両のリストである代替サーバ車両リストを作成するステップと、コンピュータが、支援情報に代替サーバ車両リストを付加して車両に送信するステップとを含む。
 車載装置が外部から支援情報を受信しているときに、その通信が途絶すると、各車両は支援情報を配信するよう動作する車両を探索する必要がある。しかし代替サーバ車両リストを予め作成し、支援情報に付加して配信しておくことにより、各車両ではどの車両から支援情報を入手すべきかを速やかに判定できる。その結果、運転支援情報を配信する設備との間の通信に障害が発生したときでも、直ちに各車両で支援情報を入手できる。
 [本開示の実施形態の詳細]
 本開示の実施形態に係る車載装置、方法、コンピュータプログラム、運転支援サーバ及び運転支援方法の具体例を、以下に図面を参照しつつ説明する。なお、本開示はこれらの例示に限定されるものではなく、請求の範囲によって示され、請求の範囲と均等の意味及び範囲内での全ての変更が含まれることが意図される。
 第1 第1実施形態
 1 構成
 (1)全体構成
 図1を参照して、第1実施形態に係る運転支援システム50は、エッジサーバ62と、車両60とを含む。
 図1を参照して、車両60は、LiDAR84、車載カメラ82、及びミリ波レーダ80等の各種のセンサを持つ。車両60はさらに、これらセンサからセンサデータを収集しエッジサーバ62に無線通信により送信し、エッジサーバ62から運転支援のための情報を受信し運転支援に利用するための車載装置90を含む。運転支援のための情報とは、例えば動的地図である。車両60はさらに、車載装置90による制御に従って、それぞれ車両60の各部を制御するための各種ECU92と、車載装置90と協働することにより、エッジサーバ62との通信が途絶したり他の車両から動的地図の配信要求を受信したりしたときの処理を実行するための連携制御ECU94とを含む。
 以下、運転支援システム50の各部の構成について説明する。
 (2)車載装置90
 図2を参照して、車載装置90は、車外通信機154と、車両60に搭載されたネットワーク(図示せず)を介して、車両60に設けられた各種センサと各種ECU等と車内外連携部152との間の通信を制御する車載ゲートウェイ150とを含む。車載装置90はさらに、エッジサーバ62から動的地図等の運転支援情報を、車両に設けられた各種センサからはセンサデータを、各種ECUからはそれらの動作状態に関する情報を、それぞれ受信する車内外連携部152を含む。車載装置90はさらに、車内外連携部152が受信した運転支援情報を含む各情報を記憶するための運転支援情報記憶部156と、連携制御ECU94からの制御に従って、通常時には車外通信機154が受信した動的地図を、エッジサーバ62との通信が途絶したときには連携制御ECU94が生成した動的地図を、それぞれ選択して車内外連携部152に入力するための選択部158とを含む。
 (3)連携制御ECU94
 ア 全体構成
 図2を参照して、車両60に搭載されている連携制御ECU94は、その機能部として、車外通信機154による通信をモニタし、エッジサーバ62及び他車両との通信状態を検出する処理と、他車両から受信した動的地図の配信要求を抽出する処理とを実行する通信状態検出部180を含む。連携ECU94はさらに、通信状態検出部180により抽出された配信要求を先入れ先出し方式で一時的に記憶するための配信要求バッファ184と、通信状態検出部180通信状態検出部180が検出した通信状態と、配信要求バッファ184に記憶されている配信要求の数とに基いて、車載装置90による連携動作の動作モードを決定する連携動作決定部182とを含む。
 連携制御ECU94はさらに、エッジサーバ62から受信する動的地図と同様の地図を、運転支援情報記憶部156に記憶されている利用可能な情報に基いて生成するためのミニエッジサーバ188を含む。ミニエッジサーバ188は、、車両60の内部サーバとして機能する。連携制御ECU94はさらに、車外通信機154とエッジサーバ62との通信の途絶が連携動作決定部182により検出されたことに応答して、ミニエッジサーバ188を起動するためのミニエッジサーバ初期化部190を含む。このとき、ミニエッジサーバ初期化部190は、ミニエッジサーバ188による動的地図に必要な情報を運転支援情報記憶部156に記憶されている情報から抽出したり、生成したりしてミニエッジサーバ188内の各記憶部に格納することによりミニエッジサーバ188が適切に動作するように初期化する。連携制御ECU94はさらに、起動したミニエッジサーバ188から出力される動的地図等の運転支援情報を記憶するためのミニエッジサーバ出力記憶部192と、連携動作決定部182により決定された動作モードに従って適切なデータを選択して車外通信機154を介してエッジサーバ62に送信するための転送部186とを含む。転送部186はさらに、配信要求バッファ184に記憶されている配信要求に応答し、動作モードに応じて運転支援情報記憶部156又はミニエッジサーバ出力記憶部192から動的地図を読み出して車外通信機154を介して配信要求の送信元に送信したり、選択部158を介して車内外連携部152に入力したりする。
 連携動作決定部182が決定する動作モードには、通常モードと、転送モードと、配信モードとがある。
 通常モードは、エッジサーバ62との通信が正常に行われており、かつ配信要求を受信していないときの動作モードである。
 転送モードとは、エッジサーバ62との通信が正常に行われており、かつ他車両から配信要求を受信したときの動作モードである。
 配信モードとは、エッジサーバ62との通信が途絶し、かつ他車両から所定時間内にしきい値を超える数の配信要求を受信したときの動作モードである。
 車載装置90は、通常モードでは、運転支援情報記憶部156に記憶されているセンサデータをエッジサーバ62に送信する。ミニエッジサーバ188は、転送モードでは、通常モードのときの動作に加え、エッジサーバ62からダウンロードされ運転支援情報記憶部156に記憶されている動的地図を、配信要求の送信元に送信する。ミニエッジサーバ188は通常モード及び転送モードでは動作しない。ミニエッジサーバ188は配信モードのときだけ動作する。
 イ ミニエッジサーバ188
 図3を参照して、ミニエッジサーバ188は、動的地図を作成するときにセンサデータを収集する他の車両又はインフラセンサ、及び生成した動的地図を配信する配信先の車両等(これら車両及びインフラセンサを「協調ノード」という。)を記憶するノード記憶部250と、ノード記憶部250に記憶された協調ノードの情報に基いて、車外通信機154を介して他車両から、また車載装置90を介して自車のセンサから、それぞれセンサデータを収集するためのセンサデータ収集部252とを含む。
 ミニエッジサーバ188はさらに、センサデータ収集部252が収集したセンサデータを一時記憶するためのセンサデータバッファ254と、センサデータバッファ254に記憶されたセンサデータを解析し、その結果と、エッジサーバ62との通信が可能であったときにエッジサーバ62から受信した動的地図とを併合して新たな動的地図を作成するためのセンサデータ解析部256とを含む。
 ウ ミニエッジサーバ初期化部190
 図4を参照して、ミニエッジサーバ初期化部190は、周囲の車両及びインフラセンサ等、車両60と通信可能なノードに関する情報を記憶し管理するノード情報DB302と、通信を介して他ノードから得られた情報であって、運転支援情報記憶部156に記憶されている情報を使用してノード情報DB302に記憶された情報を更新するためのノード情報更新部300とを含む。ミニエッジサーバ初期化部190はさらに、自車の持つ計算リソース、通信リソース及びセンサ等に関する仕様を記憶するための車両リソースDB304と、定期的にミニエッジサーバ初期化部190によるミニエッジサーバ188の初期化をトリガするためのタイマ306とを含む。ミニエッジサーバ初期化部190はさらに、タイマ306による初期化指示に応答して、車両リソースDB304を参照して協調ノードとして選択するノード数を決定するノード数決定部308を含む。ミニエッジサーバ初期化部190はさらに、タイマ306によるトリガ又は連携動作決定部182からのミニエッジサーバ188の初期化指示に応答して、協調ノードとして適したノードを、ノード数決定部308により決定された数だけ、ノード情報DB302から選択し、ミニエッジサーバ188のノード記憶部250に記憶させるためのノード決定部310とを含む。
 ノード決定部310が選択する協調ノードは、センサデータを収集するデータ収集車両と、ミニエッジサーバ188が生成した動的地図を配信する先である配信車両との双方を含む。両者の集合は一致していてもよいし、一致していなくてもよい。
 (4)エッジサーバ62
 図5を参照して、エッジサーバ62は、有線又は無線により外部と通信を行うための通信装置350と、通信装置350が受信したデータをその内容に従って適切に振り分ける処理を行う受信部352とを含む。エッジサーバ62はさらに、受信部352により各車両及びインフラセンサから受信されたセンサデータと、予め記憶している高精細な地図とから動的地図を作成するための動的地図作成部362と、動的地図作成部362が作成した動的地図を記憶する動的地図記憶部364とを含む。
 エッジサーバ62はさらに、受信部352からエッジサーバ62の管理している領域内の車両から受信した車両情報を受信し、車両情報を管理するための車両管理部354と、車両管理部354が管理する車両情報を記憶するデータベースである車両情報記憶部356とを含む。エッジサーバ62はさらに、車両情報記憶部356に記憶されている車両情報に基づき、仮に車両とエッジサーバ62との通信が途絶したときに、エッジサーバ62の代替を務めることができる車両をリストした代替サーバ車両リストを作成するための代替サーバ車両リスト作成部358と、代替サーバ車両リスト作成部358が作成した代替サーバ車両リストを記憶するための代替サーバ車両リスト記憶部360とを含む。
 エッジサーバ62はさらに、動的地図記憶部364に記憶されている動的地図を定期的に読み出し、代替サーバ車両リスト記憶部360に記憶されている代替サーバ車両リストを付加するための代替サーバ車両リスト付加部366を含む。エッジサーバ62はさらに、代替サーバ車両リストが付加された動的地図を、車両情報記憶部356に記憶された車両情報に基いて定めた送信先の車両に、通信装置350を介して運転支援情報として送信する送信部368とを含む。
 (5)プログラム構成
 ア エッジサーバ62
 エッジサーバ62の代替サーバ車両リスト作成部358を実現するプログラムは以下のような制御構造を持つ。なお、この実施形態では、運転支援が特に必要とされる交差点領域についてのみ、代替サーバ車両リストを作成するが、それ以外の領域についてもリストを作成してもよい。
 図6を参照して、このプログラムは、代替サーバ車両リストの更新周期が来るまで待機するステップ400と、代替サーバ車両リストの更新周期が来ると、管理下の全車両に対してステップ404を実行するステップ402とを含む。
 ステップ404ではこのプログラムは、代替サーバとして動作することが可能か否かを各車両で判定し、その結果をエッジサーバ62に送信するよう求める指示を各車両に送信する。
 このプログラムはさらに、ステップ402に続き、管理下の各車両からの応答を受信するステップ406と、エッジサーバ62が管理している交差点領域について、代替サーバ車両リストを作成するステップ410を実行するステップ408とを含む。
 ステップ410は、ステップ406で受信した各車両からの応答に基いて、対象の交差点領域内に存在する車両の中で代替サーバとして機能するだけの性能と動的リソースとを持つ車両からなる代替サーバ車両リストを決定するステップ420と、ステップ420で決定された代替サーバ車両リストを代替サーバ車両リスト記憶部360に記憶するステップ422とを含む。
 イ 車載装置90
 車載装置90を実現するプログラムは以下のような制御構造を持つ。図7を参照して、このプログラムは、自車の動的地図の更新周期が来るまで待機するステップ450と、動的地図の更新周期が到来したことに応答して、エッジサーバ62から動的地図が受信できるか否かを確認するステップ452と、動的地図が受信できたか否かに従って制御の流れを分岐させるステップ454とを含む。
 このプログラムはさらに、ステップ454の判定が肯定であることに応答して、ステップ452で受信された動的地図と自車が保有している情報とを統合して走行支援に活用するステップ456と、ミニエッジサーバ188が稼働中か否かを判定し、判定結果に従って制御の流れを分岐させるステップ458とを含む。このプログラムはさらに、ステップ458の判定が肯定であることに応答して、ミニエッジサーバ188を停止させるステップ460と、ステップ458の判定が否定であるとき、及びステップ458の判定が肯定でステップ460が完了したあとに、車両60の動作モードを通常モードに設定し制御をステップ450に戻すステップ462とを含む。なお、ステップ452で動的地図が受信できたときに、その動的地図に付加されていた代替サーバ車両リストが抽出され、所定の記憶装置に記憶される。
 このプログラムはさらに、ステップ454の判定が否定であることに応答して、自車が保持している代替サーバ車両リストに自車が記載されているか否かを判定し、判定結果に従って制御の流れを分岐させるステップ470と、ステップ470の判定が否定であることに応答して、リストの先頭の代替サーバ車両(代替サーバとして最も優先度の高い車両)に動的地図の配信要求を送信するステップ472とを含む。このプログラムはさらに、動的地図が受信できたか否かを判定し、判定結果に従って制御の流れを分岐させるステップ474と、ステップ474の判定が否定であることに応答して、代替サーバ車両リストに記載されている次の優先度の代替サーバ車両であってまだ動的地図の配信要求を送信していない車両があるか否かに従って制御の流れを分岐させるステップ476と、ステップ476の判定が肯定であることに応答して、その車両に動的地図の配信要求を送信して制御をステップ474に戻すステップ478とを含む。
 ステップ474の判定が肯定であるときには、動的地図が受信可能できたので、制御はステップ456に進み、自車が持つ情報とこの動的地図とを統合し走行支援に活用する。このあとの処理はステップ454の判定が肯定であるときと同様である。
 ステップ476の判定が否定であるときには、代替サーバ車両がこれ以上存在していないということなので、制御はステップ480に進み、自車が保持している情報のみに従って車両の運行を行う。制御はこの後、ステップ450に戻る。なおこのようなときには、運転支援情報が取得できない旨を運転者に知らせることが望ましい。
 図8を参照して、このプログラムはさらに、ステップ470の判定が肯定であることに応答して、ミニエッジサーバ188が自車内で稼働中か否かに従って制御の流れを分岐させるステップ500と、ステップ500の判定が否定であることに応答して、他車両から所定時間内に受信した、動的地図の配信要求の数が所定のしきい値を超えているか否かに従って制御の流れを分岐させるステップ502とを含む。このプログラムはさらに、ステップ502の判定が肯定であることに応答して、ミニエッジサーバ188を稼働させるために初期化を実行するステップ504と、ステップ504の処理が完了した後にミニエッジサーバ188を起動して制御を図7のステップ450に戻すステップ506とを含む。
 ステップ500の判定が肯定のとき、及びステップ502の判定が否定のときにはステップ504及びステップ506を実行することなく制御は図7のステップ450に戻る。
 ウ ミニエッジサーバ初期化部190
 図8のステップ504は図4のミニエッジサーバ初期化部190が行う処理に相当する。図9を参照して、ミニエッジサーバ初期化部190を実現するプログラムは、周辺車両との接続品質を観測するステップ550を含む。ここでの接続品質を図るための指標は、そもそも通信が可能か否か、通信できるときのスループット、通信の遅延時間等を含む。
 このプログラムはさらに、ステップ550の後に、周辺車両の中でその静的仕様(いわゆるスペック)が高いものを選択することにより、協調ノードの候補を所定数だけ決定するステップ552を含む。このプログラムはさらに、自車内において、動的地図の構築において実際のデータ生成及びデータの転送を行うECUを、それらの仕様に基いて抽出するステップ554と、ステップ554で抽出されたECUの現在の動的状態に関する情報を取得するステップ556とを含む。このプログラムはさらに、ステップ552で選択された車両の中から、自車で処理可能な情報量に応じたデータ収集車両、収集データ種別、動的地図の配信車両、及び配信周期を決定するステップ558を含む。ステップ558での決定は、ステップ556で取得した動的状態に基づき行われる。このプログラムはさらに、決定された情報をミニエッジサーバ188に転送しこの処理を終了するステップ560を含む。ここで収集される動的状態は、ECUが持つCPU(Central Processing Unit)の動作負荷、メモリの使用状況、通信遅延等を含む。
 エ 配信要求受信処理
 車両60において、図2に示す通信状態検出部180では、今まで説明した処理とは別に、他車両から配信(転送)要求を受信すると以下に説明するプロセスが稼働する。図10を参照して、この配信要求受信プログラムは、受信した配信要求を図2に示す配信要求バッファ184に書き込むステップ600と、直近の所定時間内に受信した配信要求の数が所定のしきい値を超えたか否かに従って制御の流れを分岐させるステップ602とを含む。このプログラムはさらに、ステップ602の判定が肯定であることに応答して、動作モードを配信モードに設定してこのプログラムの実行を終了するステップ604と、ステップ602の判定が否定であることに応答して、動作モードを転送モードに設定しこのプログラムの実行を終了するステップ606とを含む。
 なお、車両が代替サーバ車両リストに記載されていない場合には、このような配信要求は受信されないはずである。したがってその場合にはこのプログラムは起動されない。又は、起動された後、ステップ600の前に代替サーバ車両リストに自車が掲載されているか否かについての判定を行うステップを設け、判定が否定なら直ちにこのプログラムの実行を終了するようにしてもよい。
 オ 配信処理
 図10でステップ604により配信モードとなったとき、及びステップ606により転送モードとなったときには、以下の配信プログラムが図2に示す転送部186により実行される。図11を参照して、このプログラムは、配信要求バッファ184に配信要求が格納されるまで待機するステップ650と、ステップ650で配信要求バッファ184に配信要求が格納されていると判定されたことに応答して、配信要求バッファ184から配信要求を読み出すステップ652とを含む。このプログラムはさらに、ステップ652に続き、配信要求を受信した時刻からその配信要求を読み出した時刻(現在時刻)までの経過時間が、所定のしきい値時間以内か否かに従って制御の流れを分岐させるステップ654を含む。
 このプログラムはさらに、ステップ654の判定が肯定であることに応答して、ミニエッジサーバ188が稼働中か否かに従って制御の流れを分岐させるステップ656と、ステップ656の判定が肯定であることに応答して、ミニエッジサーバ188が作成した動的地図を図2のミニエッジサーバ出力記憶部192から読み出して配信要求を送信して来た車両に配信し制御をステップ650に戻すステップ658とを含む。このプログラムウはさらに、ステップ656の判定が否定であることに応答して、運転支援情報記憶部156に記憶されている動的地図をその配信要求の送信元に転送し制御をステップ650に戻すステップ660を含む。動的地図は、車外通信機154がエッジサーバ62から受信して車内外連携部152を経て運転支援情報記憶部156に格納したものである。
 なお、この例では、配信モード時には、転送部186は、この処理とは別に定期的にミニエッジサーバ出力記憶部192に記憶されている動的地図を車内外連携部152にも選択部158を介して転送する。車内外連携部152はこの動的地図に基づき通常モードと同様に動作して走行支援を行う。
 カ ミニエッジサーバ188
 ミニエッジサーバ188を実現するプログラムは以下のような制御構造を持つ。図12を参照して、このプログラムは、データ収集車両に決定された周辺の車両及び自車のセンサからセンサデータを収集するステップ700と、ステップ700で収集されたセンサデータを解析し動的地図を構築するステップ702と、ステップ702で構築された動的地図を図2に示すミニエッジサーバ出力記憶部192に保存し、制御をステップ700に戻すステップ704とを含む。
 ミニエッジサーバ188はその稼働時にはこのプログラムを定期的に実行する。ミニエッジサーバ188の処理を終了するためには、直接にプログラムの実行の終了を演算処理装置に指示する。
 キ 状態更新処理
 代替サーバ車両は、主として車両のスペックと判定時の車載装置のハードウェアの動的状態とによって選択される。スペックは静的な情報だが、動的状態は文字通り常に変化する。したがって、代替サーバ車両の選択時には代替サーバ車両として十分な性能と動的状態の余裕とを持っている車両であっても、交通状況の変化、車両における何らかの処理の実行に伴って、動的状態が変化する場合がある。この変化によっては、代替サーバ車両として十分な性能と動的状態とを持つという条件が充足できなくなる場合がある。
 この実施形態では、そのような場合には当該車両からエッジサーバ62に対して車両の状態変化を通知する。連携制御ECU94ではそのためのプログラムが定期的に稼働している。
 図13を参照して、このプログラムは、判定処理の実行周期が来るまで、又は車載装置及び車載の各ECU等に何らかの状態変化があったことを検知するまで待機するステップ750を含む。このプログラムはさらに、ステップ750で待機が終了したことに応答して、自車の情報、すなわち動的状態を収集するステップ752と、ステップ752で収集された動的状態に関する情報に基いて、自車が代替サーバ車両としての条件を満たすか否かに従って制御の流れを分岐させるステップ754とを含む。このプログラムはさらに、ステップ754の判定が否定であることに応答して、車両の動作モードを負荷の低い動作モードに移行するステップ756と、新しい動作モードをエッジサーバ62に通知して制御をステップ750に戻すステップ758とを含む。ステップ754の判定が肯定であるときには制御は直ちにステップ750に戻る。
 2 動作
 以上に説明したような構成を持つ運転支援システム50の各部は以下のように動作する。
 (1)エッジサーバ62
  図5を参照して、エッジサーバ62は、通信装置350が外部と通信を行い、通信装置350が受信したデータをその内容に従って適切に振り分ける処理を行う。すなわち通信装置350は、データ収集車両及びインフラセンサからのセンタデータを動的地図作成部362に、管理領域内の各車両からの車両情報は車両管理部354に、それぞれ与える。
 動的地図作成部362は受信したデータを解析することにより一定周期で動的地図を作成して動的地図記憶部364に保存する。この結果、動的地図は一定周期で最新の地図に更新される。
 車両管理部354は、エッジサーバ62の管理している領域からの車両から車両情報に基づき、車両情報記憶部356を構成する車両のデータベースを更新する。この結果、車両情報記憶部356に記憶されている車両情報は一定周期で最新のものに更新される。
 代替サーバ車両リスト作成部358は、車両情報記憶部356に記憶されている車両情報に基づき、定期的に代替サーバ車両リストを作成する。この作成には、各車両のスペックと、各車両の動的状態とが用いられる。なお、動的状態により車両の動作モードが変更されたときも車両情報記憶部356の車両情報が更新され、代替サーバ車両リストの作成において考慮される。代替サーバ車両リスト記憶部360は、代替サーバ車両リスト作成部358が作成した代替サーバ車両リストを記憶する。
 具体的には、図6を参照して、この処理ではまずエッジサーバ62が管理している領域内の各車両に代替サーバ車両可否判定の指示を送信し(ステップ402)、その応答を受信する(ステップ406)。この結果得られたデータに基づき、ステップ408で各交差点領域について、当該交差点領域の代替サーバ車両リストを決定し(ステップ420)、図5に示す代替サーバ車両リスト記憶部360に保存する(ステップ422)。
 再び図5を参照して、代替サーバ車両リスト付加部366は、動的地図記憶部364に記憶されている動的地図を定期的に読み出し、代替サーバ車両リスト記憶部360に記憶されている代替サーバ車両を付加して送信部368に与える。送信部368は、代替サーバ車両リスト付加部366により代替サーバ車両リストが付加された動的地図を、車両情報記憶部356に記憶された車両情報に基いて定めた送信先の車両に通信装置350を介して定期的に送信する。
 (2)車両60
 車両60は以下のように動作する。
 ア 通常モード
 図2を参照して、通常モードでは、車載装置90の連携動作決定部182は選択部158を制御して車内外連携部152が車外通信機154からのデータを受信し、車内外連携部152からのデータが車外通信機154を介してエッジサーバ62に送信される。ミニエッジサーバ188は動作しない。
 より具体的には、図7を参照して、ステップ450で動的地図の更新周期になると、ステップ452でエッジサーバ62から動的地図が受信される。通常は動的地図の受信は成功する。したがってステップ454の判定は肯定になり、ステップ456で自車の持つ情報と受信した動的地図とを統合し走行支援に活用する。ステップ458の判定は否定となり、制御はステップ450に戻る。このとき、動的地図に付加されていた代替サーバ車両リストが分離され所定の記憶装置に保存される。
 これと並行して、車内外連携部152は車載ゲートウェイ150を介して車両に搭載された各センサからの情報を受信し、車外通信機154を介してエッジサーバ62に定期的に送信する。
 イ 転送モード
 転送モードに入るためには、通常モードで他の車両から動的地図の配信要求を受信することが条件となっている。配信要求が受信されると、図2に示す通信状態検出部180がそれを検出し配信要求を配信要求バッファ184に保存する。この結果、車両60は転送モードとなる。なお、以下の説明では代替サーバ車両リストに車両60が記載されている場合と記載されていない場合との2つの場合を説明する。
 (ア)代替サーバ車両リストに車両60が記載されていない場合
 この場合には本来は他の車両からの配信要求は車両60に到着しないはずである。したがって図10に関する説明で記載したように、配信要求は無視される。
 なお、この場合、逆に車両60のみがエッジサーバ62と通信できないときには、図7に示すステップ452、ステップ454、ステップ470、ステップ472の経路を経て、既に受信していた代替サーバ車両リストを参照して適切な車両からデータの転送を受けることになる。
 (イ)代替サーバ車両リストに車両60が記載されている場合
 この場合には、他の車両からの配信要求が車両60に到着する可能性がある。しかしこの場合にも2つの可能性がある。第1は、エッジサーバ62は正常に動作しているが、何らかの原因により一部の車両がエッジサーバ62と通信できないという場合である。第2は、エッジサーバ62自体が故障している場合である。以下、順に説明する。
 A 第1の場合
 第1の場合、車両60を含む大多数の車両はエッジサーバ62と正常に通信可能であると想定できる。したがって配信要求はごく限られた車両からのものだけとなる。こうした場合には、所定時間内に車両60が受信する配信要求の数はごく少なくなるはずである。したがって、図10に示すステップ602の判定が否定となり、車両60は転送モードとなる。
 このとき、図7に示す処理は通常モードと同様に実行される。
 一方、定期的に実行される図11の配信処理では、ステップ650、ステップ652、ステップ654という処理が実行される。ステップ654の判定が肯定となると想定すれば、ステップ656の判定が否定となり(すなわち動作モードが転送モードであると判定され)、既にエッジサーバ62から受信して図2の運転支援情報記憶部156に記憶されている動的地図が運転支援情報記憶部156から読み出され、配信要求を送信してきた車両に転送される。
 B 第2の場合
 第2の場合には、周辺の車両のいずれもエッジサーバ62と通信ができなくなる。したがって、いずれの車両でも図7のステップ472からステップ478の処理が実行され、車両60に配信要求が送られてくる。すなわちこの場合、車両60が一定時間中に受信する配信要求の数は多くなるはずである。
 まず、この場合には、図7においてステップ452、ステップ454、ステップ470という経路を経て、さらに図8に示すステップ500が実行される。通信途絶直後にはミニエッジサーバ188は起動されていないので、ステップ500の判定は否定となり、ステップ502が実行される。ここで想定している条件ではステップ502の判定は肯定となり、ステップ504とステップ506が実行され、ミニエッジサーバ188が起動される。
 なおこの場合、並行して図10の処理が実行されている。複数の配信要求に対しこの処理が実行され、配信要求がいずれも配信要求バッファ184に蓄積される。どこかでステップ602の判定が肯定となり、ステップ604の処理が実行されて車両60の動作モードは配信モードに設定される。
 さらに、図11の処理も並行して実行されている。通常はステップ650の判定が否定なので配信処理は実行されない。しかしエッジサーバ62が故障したときには、車両60に対する動的地図の配信要求が集中する。したがってステップ650の判定が肯定となる。
 転送部186が配信要求バッファ184から配信要求を順に読み出し、ステップ654の条件が満たされている場合にはステップ656からステップ658を実行し、ミニエッジサーバ188が生成した動的地図が配信要求の送信元に配信される。この処理が繰り返され、転送部186に蓄積された配信要求が順番に処理される。
 なお、配信要求が到着してから一定時間以上経過した場合には、ミニエッジサーバ188が生成した動的地図は適切でなくなる可能性がある。ステップ654を設けているのはそうした問題に対処するためである。
 エッジサーバ62が正常な状態に復帰し、車両60及び他の車両とエッジサーバ62との通信が復活すると、図7においてステップ452、ステップ454、ステップ456、ステップ458、ステップ460という経路が実行されてミニエッジサーバ188が停止される。続くステップ462で動作モードが通常モードとなって車両60は通常の動作に戻る。
 3 効果
 以上のようにこの実施形態によれば、エッジサーバ62が予め代替サーバ車両リストを作成し、動的地図とともに各車両に配信する。ある車両とエッジサーバ62との通信が途絶したときに、その車両は代替サーバ車両リストに従って決めた車両に動的地図の配信要求を送信する。したがって、通信が途絶してから代替サーバの検索を始める場合と比較して、各車両はより早く動的地図を入手できる。またエッジサーバ62に障害が発生した各車両との通信が途絶したときにも、代替サーバ車両リストに掲載されている車両が配信要求の到着状況に基いて速やかに代替サーバとしての動作を開始できる。代替サーバを決定するための時間を短縮でき、エッジサーバ62に障害が発生してもその影響を小さくできるという効果がある。また、エッジサーバ62が正常であっても何らかの原因である車両がエッジサーバ62と通信できないときには、代替サーバ車両リストに掲載された車両に動的地図の配信を要求すれば速やかに動的地図を入手できる。そうした車両の数が限定されている場合には、代替サーバ(ミニサーバ)を起動する必要もなく、最低限の処理で必要な情報をそれが必要な車両に提供できる。
 第2 第2実施形態
 1 構成
 (1)管理領域
 第1実施形態では、エッジサーバ62が管理している交差点領域の各々について、代替サーバ車両リストを作成し配布している。同一領域内の車両はいずれも同じ代替サーバ車両リストを利用する。また異なる領域内の車両は互いに異なる代替サーバ車両リストを利用する。
 しかし、交差点領域によりその内部に存在する車両の数には相違が存在することが多い。特に多数の車両が存在する交差点と、それほどでもない交差点とについては、処理の効率が異なる可能性がある。すなわち、多数の車両が存在する交差点では、仮に代替サーバを稼働させたときにはその車両の負荷が大きすぎて動的地図を全車両に速やかに配信することが難しくなる可能性がある。逆に車両の数が少ない交差点では、代替サーバとして機能する車両の処理能力を十分に使用しない状況が多く発生する。
 その結果、エッジサーバが管理する車両の全体のリソースを適切に効率よく利用できないという状況が発生することがある。
 そこでこの第2実施形態では、各交差点領域にどの程度の数の車両が存在しているかによって、交差点領域を分割したり、複数の交差点領域を統合したりする。
 (2)管理領域の分割・統合
 図14に、この第2実施形態に係るエッジサーバ810が管理する管理領域800を模式的に示す。管理領域800は、領域820、領域822及び領域824に分割されている。領域820は交差点830に接している。領域822は交差点830を含む。領域824は交差点832及び交差点834の双方を含む。
 管理領域800は、もともとは交差点830を含む領域(領域820と領域822)、交差点832のみを含む領域、及び交差点834のみを含む領域とに分割されていた。しかし、管理領域800が図14に示すように分割されているのは、交差点830及びその周辺には多数の車両が存在しているのに対し、交差点832及び交差点834のいずれにもそれほど多くの車両が存在していないためである。また交差点830を含む領域が領域820と領域822とに分割されているのは車両が多いためだが、車両の数をできるだけ等分に近くするために、領域820と領域822とに分割している。このような領域の分割及び統合は、各交差点付近に存在する車両の数に応じて動的に行われる。
 なお、このように領域を統合したり分割したりするためには、いわゆるグラフ理論を用いると都合がよい。図15を参照して、図14の交差点830、交差点832及び交差点834を含む領域がそれぞれ別々に設けられている場合のこれら領域の関係はグラフ850で表される。
 グラフ850は、交差点830を含む領域に対応するノード860と、交差点832を含む領域に対応するノード862と、交差点834を含む領域に対応するノード864とを含む。交差点830と交差点832とが道路により接続されていること、及び交差点832と交差点834とが同じく道路により接続されていることは、ノード860とノード862とを結ぶエッジと、ノード862とノード864とを結ぶエッジとにより表されている。2つのノード間にエッジが存在しない場合、それら2つのノードは直接には統合できない。例えば、ノード860とノード864との間にはエッジが存在しない。これは、交差点832を含む領域を含まずに交差点830を含む領域と交差点834を含む領域とを統合できないことを表している。
 各ノードは、ノードの識別子(ノードID)、そのノードに対応する領域を規定する座標、その面積、及びその領域内に存在している車両数とをノード情報として持つ。
 このように分割された領域をグラフで表現すると、例えばノード860の車両の数がしきい値より大きければその領域を2つ又はそれ以上に分割するという判定が容易に行える。そうした処理は、当該ノード860を互いに新たなエッジで結合された2つのノード880及びノード882に分割することに相当する。また、隣接する2つのノードの車両の総数がしきい値以下であれば、これら2つのノードを統合して新たなノード884とすることができる。この場合、ノード862とノード864を結ぶエッジ以外はノード884に引き継ぐようにすればよい。こうして、新たなグラフ870が得られる。
 (3)エッジサーバ
 図16に、第2実施形態に係るエッジサーバ810の構成を示す。図16に示すエッジサーバ810が図5に示す第1実施形態に係るエッジサーバ62と異なるのは、上記した方法によりエッジサーバ810の管理領域を分割・統合するよう管理する領域管理部900をさらに含むことと、図5に示す代替サーバ車両リスト作成部358に代えて、分割・統合される各分割領域について別々に代替サーバ車両リストを作成する代替サーバ車両リスト作成部902を含むこととである。それ以外の点ではエッジサーバ810はエッジサーバ62と同じ構成を持つ。
 (4)プログラム構成
 上記した領域管理部900の機能を実現するプログラムの制御構造を図17に示す。図17を参照して、このプログラムは、予め準備された初期情報に従って初期グラフを作成するステップ920と、ステップ920で作成されたグラフの各ノードについて、対応する領域から情報を収集することで各ノード情報を更新するステップ922とを含む。このプログラムはさらに、ステップ922でノード情報が更新されたグラフの各エッジについて以下に説明するステップ926を実行するステップ924と、ステップ924の後に、各ノードについて以下に説明するステップ930を実行するステップ928と、ステップ928の処理の完了後、各ノードについて、代替サーバ車両リストを作成して制御をステップ922に戻すステップ932とを含む。
 ステップ926は、対象エッジの両端ノードのいずれかの車両数がしきい値より小さいか否かに従って制御の流れを分岐させるステップ940と、ステップ940の判定が肯定であることに応答して、両端ノードの領域が、その内部に存在する車両間で通信可能な範囲に収まっているか否かに従って制御の流れを分岐させるステップ942とを含む。ステップ926はさらに、ステップ942の判定が肯定であることに応答して、対象エッジを削除し、両端ノードを統合してステップ926を終了するステップ944を含む。ステップ940の判定が否定のとき、及びステップ942の判定が否定のときはノードの統合はせずステップ926を終わる。
 ステップ930は、対象ノードの車両数がしきい値を超えているか否かを判定し、判定に従って制御の流れを分岐させるステップ950と、ステップ950の判定が肯定のときに、車両数がほぼ等しくなるようにノードを分割し、それらノード間に新たなエッジを設けてステップ930を終了するステップ952とを含む。ステップ950の判定が否定のときにはノードの分割を行わずステップ930を終わる。
 2 動作
 上記説明及び図17の説明から明らかなように、この第2実施形態では、エッジサーバ810が管理する領域の中の分割領域がさらに2つの分割領域に動的に分割されたり、又は2つの分割領域が動的に統合されたりする。この処理を繰り返すことにより、複数の分割領域が動的に1つの分割領域に統合されたり、1つの分割領域が複数の分割領域に分割されたりする。対象となる分割領域が動的に変化するだけで、エッジサーバ810が行う、動的地図の配信処理及び各分割領域での代替サーバ車両リストの作成処理自体は第1実施形態と同様である。
 3 効果
 以上のようにこの第2実施形態によれば、各分割領域の車両数を平準化できる。エッジサーバ810が何らかの原因で動的地図の配信をできないときでも、代替サーバ車両リストを予め配布してあるので、各分割領域での代替サーバ車両による動的地図の配信が速やかに開始できる。また一部の代替サーバ車両に過大な負荷が係る事態を防止できる。
 第3 ハードウェア構成
 第1実施形態のエッジサーバ62及び第2実施形態のエッジサーバ810は、通信機能が必須であることを除き通常のコンピュータハードウェアにより実現できる。また例えば車両60の車載装置90及び連携制御ECU94は通常使用される、プロセッサを中心とする情報処理装置により実現可能である。
 図18に、例えばエッジサーバ62を実現するためのコンピュータのハードウェアブロック図を示す。エッジサーバ810の構成も同様である。
  図18は、上記各実施形態を実現するコンピュータシステムのハードウェアブロック図である。
 図18を参照して、エッジサーバ62は、DVD(Digital Versatile Disc)ドライブ1002を有するコンピュータ970と、いずれもコンピュータ970に接続された、ユーザと対話するためのキーボード974、マウス976、及びモニタ972とを含む。もちろんこれらはユーザ対話が必要となったときのための構成の一例であって、ユーザ対話に利用できる一般のハードウェア及びソフトウェア(例えばタッチパネル、音声入力、ポインティングデバイス一般)であればどのようなものも利用できる。
 コンピュータ970は、DVDドライブ1002に加えて、CPU990と、GPU(Graphics Processing Unit)992と、CPU990、GPU992、DVDドライブ1002に接続されたバス1010とを含む。コンピュータ970はさらに、バス1010に接続され、コンピュータ970のブートアッププログラム等を記憶するROM(Read-Only Memory)996と、バス1010に接続され、プログラムを構成する命令、システムプログラム、及び作業データ等を記憶するRAM(Random Access Memory)998とを含む。コンピュータ970はさらに、バス1010に接続された不揮発性メモリであるSSD(Solid State Drive)1000を含む。SSD1000は、CPU990及びGPU992が実行するプログラム、並びにCPU990及びGPU992が実行するプログラムが使用するデータ等を記憶するためのものである。コンピュータ970はさらに、車載装置及び各種のインフラセンサとの通信を可能とするネットワーク986への接続を提供するネットワークI/F(Interface)1008と、USB(Universal Serial Bus)メモリ984が着脱可能で、USBメモリ984とコンピュータ970内の各部との通信を提供するUSBポート1006とを含む。
 コンピュータ970はさらに、マイクロフォン982及びスピーカ980とバス1010とに接続された音声I/F1004を含む。音声I/F1004は、CPU990により生成されRAM998又はSSD1000に保存された音声信号、映像信号及びテキストデータをCPU990の指示に従って読み出し、アナログ変換及び増幅処理をしてスピーカ980を駆動したり、マイクロフォン982からのアナログの音声信号をデジタル化し、RAM998又はSSD1000の、CPU990により指定される任意のアドレスに保存したりする機能を持つ。
 上記実施形態では、エッジサーバ62及びエッジサーバ810の各機能を実現するコンピュータプログラム等は、いずれも例えば図18に示すSSD1000、RAM998、DVD978又はUSBメモリ984、若しくはネットワークI/F1008及びネットワーク986を介して接続された図示しない外部装置の記憶媒体等に格納される。典型的には、これらのデータ及びパラメータ等は、例えば外部からSSD1000に書込まれコンピュータ970の実行時にはRAM998にロードされる。
 このコンピュータシステムを、エッジサーバ62及びエッジサーバ810並びにその各構成要素の機能を実現するよう動作させるためのコンピュータプログラムは、DVDドライブ1002に装着されるDVD978に記憶され、DVDドライブ1002からSSD1000に転送される。又は、これらのプログラムはUSBメモリ984に記憶され、USBメモリ984をUSBポート1006に装着し、プログラムをSSD1000に転送する。又は、このプログラムはネットワーク986を通じてコンピュータ970に送信されSSD1000に記憶されてもよい。
 プログラムは実行のときにRAM998にロードされる。もちろん、キーボード974、モニタ972及びマウス976を用いてソースプログラムを入力し、コンパイルした後のオブジェクトプログラムをSSD1000に格納してもよい。スクリプト言語の場合には、キーボード974等を用いて入力したスクリプトをSSD1000に格納してもよい。仮想マシン上で動作するプログラムの場合には、仮想マシンとして機能するプログラムを予めコンピュータ970にインストールしておく必要がある。サーバとしての処理には大量の計算が伴うため、スクリプト言語ではなくコンピュータのネイティブなコードからなるオブジェクトプログラムとして本開示の実施形態の各部を実現する方が好ましい。
 CPU990は、その内部のプログラムカウンタと呼ばれるレジスタ(図示せず)により示されるアドレスに従ってRAM998からプログラムを読み出して命令を解釈する。CPU990はさらに、命令の実行に必要なデータを命令により指定されるアドレスに従ってRAM998、SSD1000又はそれ以外の機器から読み出して命令により指定される処理を実行する。CPU990は、実行結果のデータを、RAM998、SSD1000、CPU990内のレジスタ等、プログラムにより指定されるアドレスに格納する。このとき、プログラムカウンタの値もプログラムによって更新される。コンピュータプログラムは、DVD978から、USBメモリ984から、又はネットワークを介して、RAM998に直接にロードしてもよい。なお、CPU990が実行するプログラムの中で、一部のタスク(主として数値計算)については、プログラムに含まれる命令により、又はCPU990による命令実行時の解析結果に従って、GPU992にディスパッチされる。
 コンピュータ970により上記した各実施形態に係る各部の機能を実現するプログラムは、それら機能を実現するようコンピュータ970を動作させるように記述され配列された複数の命令を含む。この命令を実行するのに必要な基本的機能のいくつかはコンピュータ970上で動作するオペレーティングシステム(OS)若しくはサードパーティのプログラム、又はコンピュータ970にインストールされる各種ツールキットのモジュールにより提供される。したがって、このプログラムはこの実施形態のシステム及び方法を実現するのに必要な機能全てを必ずしも含まなくてよい。このプログラムは、命令の中で、所望の結果が得られるように制御されたやり方で適切な機能又は「プログラミング・ツール・キット」の機能を静的にリンクすることで、又はプログラムの実行時に動的に呼び出すことにより、上記した各装置及びその構成要素としての動作を実行する命令のみを含んでいればよい。そのためのコンピュータ970の動作方法は周知であるので、ここでは繰返さない。
 なお、GPU992は並列処理を行うことが可能であり、サーバでの処理に伴う多量の計算を同時並列的又はパイプライン的に実行できる。例えばプログラムのコンパイル時にプログラム中で発見された並列的計算要素、又はプログラムの実行時に発見された並列的計算要素は、随時、CPU990からGPU992にディスパッチされ、実行され、その結果が直接に、又はRAM998の所定アドレスを介してCPU990に返され、プログラム中の所定の変数に代入される。
 図19は、車両60のセンサ配置及びネットワークの構成を例示的に示す。図19を参照して、車両60は、前述した車載装置90及び連携制御ECU94が接続されているギガビットクラスの伝送速度を持つネットワーク1200と、車両60の右前部、左前部、右後部、及び左後部にそれぞれ搭載されたセンサユニット1280、センサユニット1282、センサユニット1284及びセンサユニット1286とを含む。
 センサユニット1280、センサユニット1282、センサユニット1284及びセンサユニット1286の各々は、ミリ波レーダ、カメラ、及びLiDARを含む。
 この実施形態では、車載ネットワーク1200は、同じセンサユニットに属するセンサがそれぞれ接続された4つのギガビットクラスのネットワークスイッチ1292、1294、1296及び1298を含む。車載ネットワーク1200はさらに、車両前方の2つのネットワークスイッチ1292及び1294の間をブリッジする第1のマルチギガスイッチ1300と、車両後方の2つのネットワークスイッチ1296及び1298の間をブリッジし、また第1のマルチギガスイッチ1300に接続される第2のマルチギガスイッチ1302とを含む。車載装置90はネットワークスイッチ1292に接続され、連携制御ECU94はネットワークスイッチ1294に接続されている。図2に示す車外通信機154に相当するTCU(Telematics Control Unit)1290は車載装置90とともにネットワークスイッチ1292に接続される。
 このように、センサユニット1280、センサユニット1282、センサユニット1284及びセンサユニット1286が車両の異なる位置に配置されている。そのため、車両の置かれた状況により、これらセンサユニットからのセンサデータの価値には後述するように相違が生じ得る。また各種センサからのデータ、特にカメラからのデータ量は多い。また図19には図示していないが、図20を参照して後述するように、車両には多数のECUが設けられている。それらECUはいずれも車載装置90とネットワーク1200を介して通信している。そのため、ネットワーク1200を介した通信は時として遅延を生じることがある。この遅延は車両60が代替サーバ車両として機能するときに考慮すべき事項である。
 図20は、車載装置90の概略ハードウェア構成を示すブロック図である。図20を参照して、車載装置90は、車内LAN(Local Area Network)に接続されたHMI(Human-Machine Interface)コントローラ1332と、HMIコントローラ1332と同様、車内LANに接続された車外通信コントローラ1330とを含む。車載装置90はさらに、車外通信コントローラ1330に接続された、第5世代移動通信システム(いわゆる「5G」)、高度道路交通システム(いわゆる「ITS(Intelligent Transport Systems)」)、GPS(Global Positioning System)、及びWi―Fiのためのアンテナとして機能する統合アンテナ1340を含む。GPSはGNSS(Global Navigation Satellite System)の一種である。車載装置90はさらに、車内LANによりHMIコントローラ1332及び車外通信コントローラ1330に接続された自動運転コントローラ1334と、車内LANに接続された走行系コントローラ1336とを含む。
 HMIコントローラ1332には、モニタ1342と、複数のECU1344、ECU1346が接続されている。
 自動運転コントローラ1334には、ミリ波レーダ1312、車載カメラ1314、LiDAR1316、及び自動運転ECU1348が接続されている。
 走行系コントローラ1336には、車両の走行制御のためのECU1350、ECU1352、ECU1354、及びECU1356等が接続されている。
 これらECU及び車載装置90はいずれも実質的にはコンピュータであり、内部に図示しないプロセッサ及び専用のメモリを含む。これらプロセッサ及びメモリも、車載装置90からの制御に従って、車載装置90と協働して車両60を代替サーバ車両として機能させるための種々の処理を分担可能である。したがって、それらプロセッサの稼働状況及びメモリの使用状況も、代替サーバ車両として機能可能か否かについての判定を行う上で考慮すべきである。
 第4 変形例
 上記実施形態では、ミニエッジサーバ188は配信モードのときのみ起動され、配信モードが終了すると停止される。しかしこの開示はそのような実施形態には限定されない。例えばミニエッジサーバ188が常時起動されており、配信モードとなったときにすぐにエッジサーバを代替して動作できるようにしてもよい。又は、ミニエッジサーバ188は配信モードのときのみ起動するが、ミニエッジサーバ初期化部190を定期的に動作させておくこともできる。この場合には、ミニエッジサーバ188の起動時の初期化作業を省略でき、エッジサーバを代替する代替サーバ車両として機能するまでの時間を短縮できる。
 上記実施形態では、代替サーバ車両リストには配信サーバとして動作が可能なものだけを記載している。しかしこの開示はそのような実施形態には限定されない。配信可能なものだけでなく、単に転送サーバとしてしか動作できないものを含めるようにしてもよい。又は、代替サーバ車両リストとして配信サーバのリストと転送サーバのリストとを区別して作成し、双方を転送してもよい。この場合、エッジサーバとの通信が途絶した車両はまず転送サーバのリストから車両を選択して動的地図の転送を要求し、転送されないようなら配信サーバにアクセスするようにしてもよい。こうすると、転送で済む場合に代替サーバ車両に要求が集まることが防止できる。
 上記実施形態では、エッジサーバとの通信が途絶した車両は、代替サーバ車両リストの先頭から順番に配信要求を送信する。しかしこの開示はそのような実施形態には限定されない。例えば代替サーバ車両リストに記載されている車両を選択する順番をランダムにしてもよい。このようにすると代替サーバ車両リストの先頭に記載されている車両に配信要求が集中することが避けられる。同じ効果を得るためには、車両を選択する前に代替サーバ車両リストをランダムに並べ替えてもよい。又は、エッジサーバから各車両に代替サーバ車両リストを送信する際に、車両により別々の順番になるよう代替サーバ車両リストを作り変えてもよい。
 上記実施形態では、運転支援サービスとして動的地図を送信する場合を想定している。しかしこの開示はそのような実施形態には限定されない。動的地図以外に、交通情報、道路事情、天候又はイベント情報等を車両に送信する運転支援サービスにもこの開示を適用できる。すなわち、運転支援情報とは動的地図に限定されるわけではなく、運転を支援するための情報であればどのようなものも含む。
 今回開示された実施形態は全ての点で例示であって制限的なものではないと考えられるべきである。本開示の範囲は、開示の詳細な説明の記載により示されるわけではなく、請求の範囲の各請求項によって示され、請求の範囲の文言と均等の意味及び範囲内での全ての変更が含まれることが意図される。
50 運転支援システム
60 車両
62、810 エッジサーバ
80、1312 ミリ波レーダ
82、1314 車載カメラ
84、1316 LiDAR
90 車載装置
92 各種ECU
94 連携制御ECU
150 車載ゲートウェイ
152 車内外連携部
154 車外通信機
156 運転支援情報記憶部
158 選択部
180 通信状態検出部
182 連携動作決定部
184 配信要求バッファ
186 転送部
188 ミニエッジサーバ
190 ミニエッジサーバ初期化部
192 ミニエッジサーバ出力記憶部
250 ノード記憶部
252 センサデータ収集部
254 センサデータバッファ
256 センサデータ解析部
300 ノード情報更新部
302 ノード情報DB
304 車両リソースDB
306 タイマ
308 ノード数決定部
310 ノード決定部
350 通信装置
352 受信部
354 車両管理部
356 車両情報記憶部
358、902 代替サーバ車両リスト作成部
360 代替サーバ車両リスト記憶部
362 動的地図作成部
364 動的地図記憶部
366 代替サーバ車両リスト付加部
368 送信部
400、402、404、406、408、410、420、422、450、452、454、456、458、460、462、470、472、474、476、478、480、500、502、504、506、550、552、554、556、558、560、600、602、604、606、650、652、654、656、658、660、700、702、704、750、752、754、756、758、920、922、924、926、928、930、932、940、942、944、950、952 ステップ
800 管理領域
820、822、824 領域
830、832、834 交差点
850、870 グラフ
860、862、864、880、882、884 ノード
900 領域管理部
970 コンピュータ
972、1342 モニタ
974 キーボード
976 マウス
978 DVD
980 スピーカ
982 マイクロフォン
984 USBメモリ
986、1200 ネットワーク
990 CPU
992 GPU
996 ROM
998 RAM
1000 SSD
1002 DVDドライブ
1004 音声I/F
1006 USBポート
1008 ネットワークI/F
1010 バス
1280、1282、1284、1286 センサユニット
1290 TCU
1292、1294、1296、1298 ネットワークスイッチ
1300、1302 マルチギガスイッチ
1330 車外通信コントローラ
1332 HMIコントローラ
1334 自動運転コントローラ
1336 走行系コントローラ
1340 統合アンテナ
1344、1346、1350、1352、1354、1356 ECU
1348 自動運転ECU
 

Claims (20)

  1.  無線通信装置と、
     前記無線通信装置を介して外部サーバから受信した運転を支援するための支援情報を用いて車両の運転支援を行うための運転支援装置とを含む車載装置であって、さらに、
     他の車載装置から支援情報の配信要求を受信したことに応答して、前記車載装置が前記外部サーバを代替して動作すべきか否かについての判定を行う動作判定部と、
     前記動作判定部による前記判定が肯定であるときに、前記車載装置が利用可能な車両の支援情報を前記無線通信装置により前記他の車載装置に送信する支援情報送信装置とを含む、車載装置。
  2.  前記運転支援装置が前記外部サーバから受信する前記支援情報は、運転支援情報と、代替サーバとして動作可能な車両のリストとを含み、
     前記動作判定部は、前記リストを照会し、前記車載装置を搭載した前記車両が当該リストに記載されているか否かにより、前記車載装置が前記外部サーバを代替して動作すべきか否かについての判定を行うリスト照会部を含む、請求項1に記載の車載装置。
  3.  前記車載装置はさらに、前記無線通信装置を介して前記外部サーバから前記支援情報が受信可能か否かについての判定を行う受信可否判定部を含み、
     前記支援情報送信装置は、前記リスト照会部による前記判定が肯定であり、かつ前記受信可否判定部による前記判定が肯定であるときに、前記他の車載装置から前記支援情報の前記配信要求を受信したことに応答して、前記外部サーバから受信した前記運転支援情報を前記他の車載装置に転送する転送装置を含む、請求項2に記載の車載装置。
  4.  前記車載装置は、前記他の車両から受信する前記配信要求を先入れ先出し方式で格納するバッファをさらに含み、
     前記転送装置は、前記バッファから前記配信要求を読み出し、読み出した前記配信要求の受信時刻から現在時刻までの経過時間がしきい値時間より長ければ前記配信要求を無視する、請求項3に記載の車載装置。
  5.  前記車載装置はさらに、前記車載装置が利用可能な情報を用いて運転支援情報を構築する内部サーバを含み、
     前記支援情報送信装置は、
      前記リスト照会部による前記判定が肯定であり、かつ前記受信可否判定部による前記判定が否定であるときに、外部から前記支援情報の配信要求を受信したことに応答して、前記内部サーバを初期化し起動するサーバ初期化部と、
     前記支援情報の配信要求を前記他の車載装置から受信したことに応答して、前記内部サーバの生成した前記運転支援情報を前記他の車載装置に配信する配信装置とを含む、請求項3に記載の車載装置。
  6.  前記車載装置は、前記他の車両から受信する前記配信要求を先入れ先出し方式で格納するバッファをさらに含み、
     前記配信装置は、前記バッファから前記配信要求を読み出し、読み出した前記配信要求の受信時刻から現在時刻までの経過時間がしきい値時間より長ければ前記配信要求を無視する、請求項5に記載の車載装置。
  7.  前記サーバ初期化部は、前記リスト照会部による前記判定が肯定であり、かつ前記受信可否判定部による前記判定が否定であるときに、直近の所定時間内に外部から所定のしきい値を超える数の複数の前記配信要求を受信したことに応答して、前記内部サーバを初期化し起動する、請求項5又は請求項6に記載の車載装置。
  8.  前記サーバ初期化部は、
     前記無線通信装置を介して通信可能な他の複数の車両の中から、複数の協調ノード候補を選択する協調ノード候補選択部と、
     前記内部サーバの機能を実現するための演算処理装置を選択する処理装置選択部と、
     選択された前記演算処理装置及び当該演算処理装置との通信に関する動的状態についての情報、及び外部との通信に関する動的状態についての情報を取得する動的状態情報取得部と、
     前記選択された前記協調ノード候補、及び取得された前記動的状態に基いて、少なくとも一つの協調ノードを選び、前記協調ノードから収集するセンサデータ種別、前記運転支援情報を配信する先である車両、及び前記運転支援情報の配信周期を決定する初期情報決定部と、
     前記初期情報決定部により決定された情報を前記内部サーバの記憶装置に転送する転送部とを含む、請求項5から請求項7のいずれか1項に記載の車載装置。
  9.  定期的に前記サーバ初期化部を動作させるタイマをさらに含む、請求項5から請求項8のいずれか1項に記載の車載装置。
  10.  さらに、前記リスト照会部による前記判定が否定であり、かつ前記受信可否判定部による前記判定が否定であるときに、前記リストに記載されている車両の少なくとも一つに対して前記支援情報の配信要求を送信する要求送信装置を含む、請求項3に記載の車載装置。
  11.  前記要求送信装置は、前記リストの先頭から順番に、前記支援情報の返信があるまで前記配信要求を送信する、請求項10に記載の車載装置。
  12.  前記要求送信装置は、前記配信要求の送信を開始するに先立って、前記リストをランダムに並べ替える、請求項11に記載の車載装置。
  13.  前記要求送信装置は、前記リストからランダムに車両を選択して前記配信要求を送信する、請求項10に記載の車載装置。
  14.  前記外部サーバから前記車載装置の静的仕様と動的状態とに関する情報の送信を要求する情報配信要求を受信したことに応答して、前記車載装置の静的仕様又は動的状態、並びに当該車載装置において前記車載装置が利用可能な計算リソース又は通信リソースの静的仕様又は動的状態に関する情報を前記外部サーバに送信する情報送信装置をさらに含む、請求項1から請求項13のいずれか1項に記載の車載装置。
  15.  定期的に、前記車載装置が前記外部サーバを代替して動作すべきか否かについての判定を行う動作定期判定部と、
     前記動作定期判定部による前記判定の結果が前回と異なるときに、当該判定の結果を前記外部サーバに通知する通知装置をさらに含む、請求項1から請求項14のいずれか1項に記載の車載装置。
  16.  コンピュータが、無線通信装置を介して外部サーバから受信した支援情報を用いて車両の運転支援を行うステップと、
     前記コンピュータが、他の車載装置から支援情報の配信要求を受信したことに応答して、前記コンピュータが前記外部サーバを代替して動作すべきか否かについての判定を行うステップと、
     前記コンピュータが、前記判定を行うステップにおける前記判定が肯定であるときに、前記コンピュータが利用可能な前記支援情報を前記無線通信装置により前記他の車載装置に送信するステップとを含む、車載装置を動作させる方法。
  17.  無線通信装置に接続されるコンピュータを、
     前記無線通信装置を介して外部サーバから受信した支援情報を用いて車両の運転支援を行うための運転支援装置と、
     他の車載装置から支援情報の配信要求を受信したことに応答して、前記コンピュータが前記外部サーバを代替して動作すべきか否かについての判定を行う動作判定部と、
     前記動作判定部による前記判定が肯定であるときに、前記コンピュータが利用可能な前記支援情報を前記無線通信装置により前記他の車載装置に送信する支援情報送信装置として機能させる、コンピュータプログラム。
  18.  管理領域内での運転を支援する支援情報を作成し当該管理領域内の車両に送信する運転支援サーバであって、
     前記管理領域の交通状態を検出するセンサからのセンサデータを受信し、前記支援情報を作成する支援情報作成部と、
     前記管理領域内に存在する車両に関する車両情報を収集し、前記運転支援サーバの代替サーバとして動作可能な車両のリストである代替サーバ車両リストを作成する代替サーバ車両リスト作成部と、
     前記支援情報に前記代替サーバ車両リストを付加して前記車両に送信する送信装置とを含む、運転支援サーバ。
  19.  前記代替サーバ車両リスト作成部は、前記管理領域を複数の分割領域に分割し、当該複数の分割領域の各々について前記代替サーバ車両リストを作成する分割領域別リスト作成部を含み、
     前記送信装置は、前記複数の分割領域の各々について、前記支援情報に、当該分割領域のための前記代替サーバ車両リストを添付して、当該分割領域に存在する各車両に送信する領域別送信装置を含む、請求項18に記載の運転支援サーバ。
  20.  管理領域内の運転を支援するための支援情報を作成し当該管理領域内の車両に送信するための運転支援サーバを含む運転支援システムにおける運転支援方法であって、
     コンピュータが、前記管理領域の交通状態を検出するセンサからのセンサデータを受信し、前記支援情報を作成するステップと、
     コンピュータが、前記管理領域内に存在する車両に関する車両情報を収集し、前記運転支援サーバの代替サーバとして動作可能な車両のリストである代替サーバ車両リストを作成するステップと、
     コンピュータが、前記支援情報に前記代替サーバ車両リストを付加して前記車両に送信するステップとを含む、運転支援方法。
     
PCT/JP2022/018887 2021-07-02 2022-04-26 車載装置、方法、コンピュータプログラム、運転支援サーバ及び運転支援方法 WO2023276431A1 (ja)

Priority Applications (2)

Application Number Priority Date Filing Date Title
JP2023531469A JPWO2023276431A1 (ja) 2021-07-02 2022-04-26
CN202280045015.2A CN117561555A (zh) 2021-07-02 2022-04-26 车载装置、方法、计算机程序、驾驶辅助服务器及驾驶辅助方法

Applications Claiming Priority (2)

Application Number Priority Date Filing Date Title
JP2021110815 2021-07-02
JP2021-110815 2021-07-02

Publications (1)

Publication Number Publication Date
WO2023276431A1 true WO2023276431A1 (ja) 2023-01-05

Family

ID=84692714

Family Applications (1)

Application Number Title Priority Date Filing Date
PCT/JP2022/018887 WO2023276431A1 (ja) 2021-07-02 2022-04-26 車載装置、方法、コンピュータプログラム、運転支援サーバ及び運転支援方法

Country Status (3)

Country Link
JP (1) JPWO2023276431A1 (ja)
CN (1) CN117561555A (ja)
WO (1) WO2023276431A1 (ja)

Citations (6)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2012048489A (ja) * 2010-08-26 2012-03-08 Toyota Infotechnology Center Co Ltd キャッシュ管理装置およびデータ配信システム
WO2017111139A1 (ja) * 2015-12-23 2017-06-29 京セラ株式会社 サーバ装置、車両制御装置、および歩行補助装置
JP2017139750A (ja) * 2016-02-03 2017-08-10 富士通株式会社 通信制御方法、プログラム及び情報処理装置
JP2018207154A (ja) * 2017-05-30 2018-12-27 住友電気工業株式会社 通信制御装置、通信制御方法、及びコンピュータプログラム
WO2019065546A1 (ja) * 2017-09-29 2019-04-04 パナソニック インテレクチュアル プロパティ コーポレーション オブ アメリカ 三次元データ作成方法、クライアント装置及びサーバ
WO2021002223A1 (ja) * 2019-07-01 2021-01-07 住友電気工業株式会社 車載装置及びその制御方法、並びに車両

Patent Citations (6)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2012048489A (ja) * 2010-08-26 2012-03-08 Toyota Infotechnology Center Co Ltd キャッシュ管理装置およびデータ配信システム
WO2017111139A1 (ja) * 2015-12-23 2017-06-29 京セラ株式会社 サーバ装置、車両制御装置、および歩行補助装置
JP2017139750A (ja) * 2016-02-03 2017-08-10 富士通株式会社 通信制御方法、プログラム及び情報処理装置
JP2018207154A (ja) * 2017-05-30 2018-12-27 住友電気工業株式会社 通信制御装置、通信制御方法、及びコンピュータプログラム
WO2019065546A1 (ja) * 2017-09-29 2019-04-04 パナソニック インテレクチュアル プロパティ コーポレーション オブ アメリカ 三次元データ作成方法、クライアント装置及びサーバ
WO2021002223A1 (ja) * 2019-07-01 2021-01-07 住友電気工業株式会社 車載装置及びその制御方法、並びに車両

Also Published As

Publication number Publication date
JPWO2023276431A1 (ja) 2023-01-05
CN117561555A (zh) 2024-02-13

Similar Documents

Publication Publication Date Title
US11403517B2 (en) Proximity-based distributed sensor processing
US11550623B2 (en) Distributed system task management using a simulated clock
US20210070317A1 (en) Travel plan generation device, travel plan generation method, and non-transitory tangible computer readable storage medium
JP7047829B2 (ja) 車両マクロクラウドにおける改善された無線通信
US11480964B2 (en) Distributed system execution using a serial timeline
US11354158B2 (en) Platooning of computational resources in automated vehicles networks
US10999719B1 (en) Peer-to-peer autonomous vehicle communication
WO2020231480A1 (en) Map updates based on data captured by an autonomous vehicle
US20180357561A1 (en) System and methods to provide seamless information exchange between certified and uncertified applications
EP4148526A1 (en) Simulation method for autonomous vehicle and method for controlling autonomous vehicle
US11874118B2 (en) Crowdsourcing map maintenance
US20200210225A1 (en) Architecture for simulation of distributed systems
JP7416067B2 (ja) 車載装置及びその制御方法、並びに車両
WO2023276431A1 (ja) 車載装置、方法、コンピュータプログラム、運転支援サーバ及び運転支援方法
JP2007310733A (ja) 交通情報管理システム、及び、車載装置
CN113475107B (zh) 将云侧角色委派给设备的方法、***和计算机可读存储介质
JP7338236B2 (ja) 接続先サーバの選択装置、それを備えた車載装置、車両、接続先サーバの選択方法、およびサーバ
WO2023276434A1 (ja) 車載装置及びその動作方法、並びに車両
KR102300908B1 (ko) 다중 코어 제어 방법
WO2023053943A1 (ja) 車載装置及びその動作方法、並びにコンピュータプログラム
US20230209409A1 (en) Communication control device, communication control method, and storage medium for communication control
JP7331399B2 (ja) センサ設備装置及びその制御方法、車載装置及びその制御方法、並びに交通支援システム
US20230209523A1 (en) Communication management device, communication management method, and storage medium for communication management
JP6171881B2 (ja) 電子制御装置
JP6890761B2 (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: 22832591

Country of ref document: EP

Kind code of ref document: A1

WWE Wipo information: entry into national phase

Ref document number: 2023531469

Country of ref document: JP

WWE Wipo information: entry into national phase

Ref document number: 202280045015.2

Country of ref document: CN

NENP Non-entry into the national phase

Ref country code: DE