WO2020137950A1 - 移動体管理装置、制御方法、プログラム及び記憶媒体 - Google Patents

移動体管理装置、制御方法、プログラム及び記憶媒体 Download PDF

Info

Publication number
WO2020137950A1
WO2020137950A1 PCT/JP2019/050309 JP2019050309W WO2020137950A1 WO 2020137950 A1 WO2020137950 A1 WO 2020137950A1 JP 2019050309 W JP2019050309 W JP 2019050309W WO 2020137950 A1 WO2020137950 A1 WO 2020137950A1
Authority
WO
WIPO (PCT)
Prior art keywords
information
vehicle
job
cloud server
data
Prior art date
Application number
PCT/JP2019/050309
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 EP19903895.1A priority Critical patent/EP3905214A4/en
Priority to JP2020563244A priority patent/JPWO2020137950A1/ja
Priority to US17/419,174 priority patent/US12088669B2/en
Publication of WO2020137950A1 publication Critical patent/WO2020137950A1/ja
Priority to JP2023049572A priority patent/JP2023076556A/ja
Priority to JP2023222694A priority patent/JP2024024021A/ja

Links

Images

Classifications

    • GPHYSICS
    • G08SIGNALLING
    • G08GTRAFFIC CONTROL SYSTEMS
    • G08G1/00Traffic control systems for road vehicles
    • G08G1/01Detecting movement of traffic to be counted or controlled
    • G08G1/0104Measuring and analyzing of parameters relative to traffic conditions
    • G08G1/0108Measuring and analyzing of parameters relative to traffic conditions based on the source of data
    • G08G1/0112Measuring and analyzing of parameters relative to traffic conditions based on the source of data from the vehicle, e.g. floating car data [FCD]
    • GPHYSICS
    • G07CHECKING-DEVICES
    • G07CTIME OR ATTENDANCE REGISTERS; REGISTERING OR INDICATING THE WORKING OF MACHINES; GENERATING RANDOM NUMBERS; VOTING OR LOTTERY APPARATUS; ARRANGEMENTS, SYSTEMS OR APPARATUS FOR CHECKING NOT PROVIDED FOR ELSEWHERE
    • G07C5/00Registering or indicating the working of vehicles
    • G07C5/006Indicating maintenance
    • GPHYSICS
    • G07CHECKING-DEVICES
    • G07CTIME OR ATTENDANCE REGISTERS; REGISTERING OR INDICATING THE WORKING OF MACHINES; GENERATING RANDOM NUMBERS; VOTING OR LOTTERY APPARATUS; ARRANGEMENTS, SYSTEMS OR APPARATUS FOR CHECKING NOT PROVIDED FOR ELSEWHERE
    • G07C5/00Registering or indicating the working of vehicles
    • G07C5/008Registering or indicating the working of vehicles communicating information to a remotely located station
    • GPHYSICS
    • G07CHECKING-DEVICES
    • G07CTIME OR ATTENDANCE REGISTERS; REGISTERING OR INDICATING THE WORKING OF MACHINES; GENERATING RANDOM NUMBERS; VOTING OR LOTTERY APPARATUS; ARRANGEMENTS, SYSTEMS OR APPARATUS FOR CHECKING NOT PROVIDED FOR ELSEWHERE
    • G07C5/00Registering or indicating the working of vehicles
    • G07C5/08Registering or indicating performance data other than driving, working, idle, or waiting time, with or without registering driving, working, idle or waiting time
    • GPHYSICS
    • G07CHECKING-DEVICES
    • G07CTIME OR ATTENDANCE REGISTERS; REGISTERING OR INDICATING THE WORKING OF MACHINES; GENERATING RANDOM NUMBERS; VOTING OR LOTTERY APPARATUS; ARRANGEMENTS, SYSTEMS OR APPARATUS FOR CHECKING NOT PROVIDED FOR ELSEWHERE
    • G07C5/00Registering or indicating the working of vehicles
    • G07C5/08Registering or indicating performance data other than driving, working, idle, or waiting time, with or without registering driving, working, idle or waiting time
    • G07C5/10Registering or indicating performance data other than driving, working, idle, or waiting time, with or without registering driving, working, idle or waiting time using counting means or digital clocks
    • GPHYSICS
    • G08SIGNALLING
    • G08GTRAFFIC CONTROL SYSTEMS
    • G08G1/00Traffic control systems for road vehicles
    • G08G1/01Detecting movement of traffic to be counted or controlled
    • G08G1/0104Measuring and analyzing of parameters relative to traffic conditions
    • G08G1/0125Traffic data processing
    • G08G1/0129Traffic data processing for creating historical data or processing based on historical data
    • GPHYSICS
    • G08SIGNALLING
    • G08GTRAFFIC CONTROL SYSTEMS
    • G08G1/00Traffic control systems for road vehicles
    • G08G1/01Detecting movement of traffic to be counted or controlled
    • G08G1/0104Measuring and analyzing of parameters relative to traffic conditions
    • G08G1/0137Measuring and analyzing of parameters relative to traffic conditions for specific applications
    • G08G1/0141Measuring and analyzing of parameters relative to traffic conditions for specific applications for traffic information dissemination
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L43/00Arrangements for monitoring or testing data switching networks
    • H04L43/06Generation of reports
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L43/00Arrangements for monitoring or testing data switching networks
    • H04L43/06Generation of reports
    • H04L43/065Generation of reports related to network devices
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L67/00Network arrangements or protocols for supporting network services or applications
    • H04L67/01Protocols
    • H04L67/06Protocols specially adapted for file transfer, e.g. file transfer protocol [FTP]
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L67/00Network arrangements or protocols for supporting network services or applications
    • H04L67/01Protocols
    • H04L67/12Protocols specially adapted for proprietary or special-purpose networking environments, e.g. medical networks, sensor networks, networks in vehicles or remote metering networks
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04WWIRELESS COMMUNICATION NETWORKS
    • H04W4/00Services specially adapted for wireless communication networks; Facilities therefor
    • H04W4/30Services specially adapted for particular environments, situations or purposes
    • H04W4/40Services specially adapted for particular environments, situations or purposes for vehicles, e.g. vehicle-to-pedestrians [V2P]
    • H04W4/44Services specially adapted for particular environments, situations or purposes for vehicles, e.g. vehicle-to-pedestrians [V2P] for communication between vehicles and infrastructures, e.g. vehicle-to-cloud [V2C] or vehicle-to-home [V2H]
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04WWIRELESS COMMUNICATION NETWORKS
    • H04W24/00Supervisory, monitoring or testing arrangements
    • H04W24/10Scheduling measurement reports ; Arrangements for measurement reports

Definitions

  • the present invention relates to a state management technique in data collection.
  • Patent Document 1 when a change point of a partial map is detected based on an output of a sensor installed in a moving body such as a vehicle, a driving assistance device that transmits change point information regarding the change point to a server device. Is disclosed.
  • companies that provide various services related to vehicles operate their own servers to specify the data to be uploaded to the vehicles, and to provide the vehicles required to provide the services via a server that manages the vehicles (vehicle management server). It is envisaged to collect various information regarding the future. In such a system, the vehicle is required to recognize uploading the instructed data as a job when a predetermined execution condition is satisfied, and execute the job when the execution condition described above is satisfied. ..
  • the data collection request generated by the server of the service company is not guaranteed to be delivered to the vehicle, and when the vehicle management server has a high load or there is no vehicle that satisfies the collection condition and there is no vehicle to which the data collection request should be delivered. If it does not exist, it will not be delivered to the vehicle. In addition, when the vehicle side has a high load and the data collection request is deleted from the vehicle, the data collection request is not properly executed by the vehicle. In consideration of the above, it is necessary to appropriately manage the state of the processing instructed to be executed by each vehicle in order to accurately grasp the effectiveness and cost efficiency of the data collection request, the reliability of the collected data, and the like.
  • the present invention has been made to solve the above problems, and provides a mobile object management apparatus capable of suitably acquiring statistical data regarding a state of a process instructing a mobile object to execute. Is the main purpose.
  • a mobile management device comprising: a first receiving unit that receives a request signal issued by the information management device; a generating unit that generates command information according to the request signal; A first transmitting unit that transmits the command information to the mobile body; a second receiving unit that receives a reception result indicating that the plurality of mobile bodies have successfully received the command information; A first counting unit that counts the number of moving bodies that have successfully received the command information, a third receiving unit that receives response information to the command information, and the response information is transmitted based on the response information.
  • a second counting unit that counts the number of moving objects that have been generated; a generating unit that generates ratio information indicating a ratio of the number of moving objects that have transmitted the response information to the number of normally moving moving objects; A second transmitting unit that transmits information to the information management device as the determination information.
  • the invention according to a claim is a control method executed by a mobile management device, comprising: a first receiving step of receiving a request signal issued by an information management device; and command information corresponding to the request signal.
  • Generating step a first transmitting step of transmitting the command information to a plurality of mobile bodies, and a second reception of receiving a reception result indicating that the plurality of mobile bodies have successfully received the command information.
  • a step a first counting step of counting the number of moving bodies that have normally received the command information based on the reception result, a third receiving step of receiving response information for the command information, and the response information.
  • FIG. 1 shows a schematic configuration of a job distribution system according to a first example. It is the figure which showed roughly the flow of the data between an in-vehicle terminal, a vehicle cloud server, and a service cloud server. It is a block diagram which shows the internal structure of a vehicle-mounted terminal. It is the figure which showed roughly the state transition of the vehicle-mounted terminal with respect to a job. It is a block diagram which shows the internal structure of a vehicle cloud server and a service cloud server. It is an example of a data structure of a job request. It is an example of a data structure of transmission history information. It is an example of a data structure of upload data that the vehicle-mounted terminal transmits to the vehicle cloud server based on a job request.
  • the structural example of the job distribution system in an application example is shown. It is the bird's-eye view which showed the station square street of A station. It is a block diagram which shows the internal structure of the vehicle-mounted terminal which concerns on 2nd Example. It is an example of a data structure of upload data according to the second embodiment.
  • 9 is a flowchart showing a processing procedure executed by the vehicle cloud server according to the second embodiment which receives a job request including a valid state management flag. It is an example of a data structure of upload data according to the third embodiment. It is the figure which showed roughly the internal structure of the vehicle cloud server which concerns on 3rd Example. It is a flowchart which shows the process procedure which the vehicle-mounted terminal which concerns on 3rd Example which received the job request containing the effective state management flag.
  • 9 is a flowchart showing a processing procedure executed by the vehicle cloud server according to the third embodiment which receives a job request including a valid state management flag.
  • One preferred embodiment is a mobile management device, including a first receiving unit that receives a request signal issued by an information management device, a generation unit that generates command information according to the request signal, and a plurality of A first transmitting unit that transmits the command information to the mobile body; a second receiving unit that receives a reception result indicating that the plurality of mobile bodies have successfully received the command information; A first counting unit that counts the number of moving bodies that have successfully received the command information, a third receiving unit that receives response information to the command information, and the response information is transmitted based on the response information.
  • a second counting unit that counts the number of moving bodies that have been transmitted, the number of moving bodies that have been successfully received, and the number of moving bodies that has transmitted the response information, and transmit the moving body number information to the information management device. And a second transmitting unit that does.
  • the “number of moving objects” may be the total number.
  • the mobile management device provides the information management device with the mobile number information regarding the number of mobiles that normally received the command information based on the request signal and the number of mobiles that transmitted the response information to the command information. Can be suitably supplied.
  • the command information includes condition information indicating a condition for the mobile to execute a command indicated by the command information, and the response information indicates whether or not the condition is satisfied. Accordingly, the command information includes information on the possible states. According to this aspect, the mobile management device can acquire, for each mobile, information regarding a state that the command information can take according to whether or not the condition indicated by the condition information is satisfied. The number can be accurately counted.
  • the first transmission unit provides the plurality of mobile units with the command information and flag information for instructing transmission of information regarding a state that the command information can take.
  • the mobile management device can preferably collect information regarding a state that the command information can take from the mobile.
  • the states that the command information can take are an execution state in which the command is executed when the condition is satisfied and the command when the condition is not satisfied.
  • the second transmission unit includes, as the moving body number information, the movement in which the command information for the number of the moving bodies that can be normally received is the execution state report.
  • Information indicating the ratio of the number of bodies is transmitted to the information management device. According to this aspect, the information necessary for determining the validity of the request signal and the cost efficiency can be preferably supplied to the information management device.
  • the mobile management device includes identification information of the mobile that has transmitted the command information by the first transmission unit, and identification information of a command indicated by the command information. It further comprises a storage unit that stores the data in association with each other. According to this aspect, the mobile unit management device can appropriately hold the number of mobile units to which the command information is transmitted, for each of the transmitted command information.
  • the reception result includes fail information indicating that the command information has not been normally accepted. According to this aspect, the mobile management device can accurately count the number of mobiles that have normally received the command information.
  • a control method executed by the mobile management device, the first receiving step of receiving a request signal issued by the information management device, and command information according to the request signal are generated.
  • a first counting step of counting the number of mobile bodies that have successfully received the command information a third receiving step of receiving response information to the command information, and based on the response information
  • a second counting step of counting the number of mobiles that have transmitted the response information, mobile number information relating to the number of mobiles that have been successfully received, and the number of mobiles that have transmitted the response information A second transmitting step of transmitting to the information management device.
  • the mobile unit management device performs mobile unit number information regarding the number of mobile units that have normally received the command information based on the request signal and the number of mobile units that have transmitted the response information to the command information. Can be suitably supplied to the information management device.
  • Yet another preferred embodiment is a program that causes a computer to execute the control method described above.
  • the computer can suitably grasp the number of terminal devices that have transmitted the processing information for each processing content indicated by the processing information.
  • the program is stored in a storage medium.
  • FIG. 1 shows a schematic configuration of a job distribution system according to the first embodiment.
  • the job distribution system is a system for collecting various information generated by a vehicle sensor, and includes a vehicle V, a vehicle (VEHICLE) cloud server 30, and a service cloud server 40.
  • V vehicle
  • VEHICLE vehicle
  • service cloud server 40 service cloud server
  • An in-vehicle terminal 20 is mounted on the vehicle V.
  • the in-vehicle terminal 20 is an information processing device that is connected to various sensors for acquiring information about the state of the vehicle V or the surrounding environment and performs a predetermined process.
  • the vehicle-mounted terminal 20 executes the processing requested by the service cloud server 40 (also simply referred to as “job”) based on the outputs of these sensors.
  • the job mainly refers to a process of acquiring information regarding the state of the specific vehicle V designated by the service cloud server 40 or the surrounding environment from the sensor and uploading the information to the service cloud server 40.
  • the vehicle V and the vehicle-mounted terminal 20 are examples of a “moving body”.
  • the in-vehicle terminal 20 is an example of a “terminal device”.
  • the “moving body” is not limited to the vehicle V and the in-vehicle terminal 20, and may be a moving body such as a bicycle, a wheelchair, a drone, or a ship.
  • the vehicle cloud server 30 is a server device that constitutes a vehicle cloud.
  • the vehicle cloud is, for example, a cloud operated by an information collection company that manages a vehicle (for example, an autonomous vehicle) provided to a user and collects various kinds of information from the vehicle.
  • the information collection company may be played by the automobile manufacturer itself, or may be directly or indirectly operated by the automobile manufacturer. For example, if there are three automobile manufacturers, A, B, and C, the information collection company operated by A, the information collection company operated by B, and the information collection company operated by C are individually Existing information collecting companies collect various information from vehicles manufactured by the operating automobile manufacturers. Alternatively, a form in which a plurality of automobile manufacturers such as D company, E company, and F company jointly commission/operate may be adopted.
  • the vehicle cloud server 30 is an example of a “mobile body management device”.
  • the service cloud server 40 is a server device that constitutes a service cloud.
  • the service cloud is, for example, a cloud operated by a service providing company that provides services related to vehicles.
  • Service providers include insurance companies that provide insurance services, map service companies that provide map services, parking service companies that provide parking service, and route search service companies that provide route search service. Can be mentioned.
  • the service cloud server 40 generates information (also referred to as “job request”) instructing a job to be executed by the vehicle-mounted terminal 20 according to the purpose, and delivers the information to the vehicle-mounted terminal 20 via the vehicle cloud server 30.
  • the service cloud server 40 is an example of an “information management device”.
  • the vehicle-mounted terminal 20 mounted on the vehicle V, the vehicle cloud server 30, and the service cloud server 40 can communicate with each other via the network 5 in a wired or wireless manner.
  • the vehicle-mounted terminal 20, the vehicle cloud server 30, and the service cloud server 40 exchange the job request generated by the service cloud server 40, and the data (the data generated by the vehicle-mounted terminal 20 in response to the job request). Also referred to as "upload data").
  • the configuration of the job distribution system shown in FIG. 1 is an example, and the configuration to which the present invention is applicable is not limited to this.
  • the service cloud there may be a service cloud that generates a job request (first service cloud) and a service cloud that requests the first service cloud to collect predetermined information (second service cloud).
  • first service cloud generates a job request according to the request content of the second service cloud, and based on the upload data received from the vehicle cloud to which the job request is transmitted, the second service cloud. Sends the information requested by the second service cloud.
  • FIG. 2 is a diagram schematically showing the flow of data among the vehicle-mounted terminal 20, the vehicle cloud server 30, and the service cloud server 40.
  • the service cloud server 40 transmits the generated job request “JR1” to the vehicle cloud server 30, and the vehicle cloud server 30 generates the job based on the job request JR1 received from the service cloud server 40.
  • the request “JR2” is transmitted to the vehicle-mounted terminal 20.
  • the job request JR1 can include a vehicle ID indicating a vehicle on which the job should be executed, a driver ID, and the like.
  • the service cloud server 40 sends the vehicle ID to be transmitted and the vehicle ID to be transmitted as necessary.
  • the driver ID is included in the job request JR1. Accordingly, the vehicle cloud server 30 transmits the job request JR2 to the vehicle-mounted terminal 20 of the corresponding vehicle.
  • the vehicle-mounted terminal 20 that has received the job request JR2 collects the data specified in the job request JR2 from the sensor, and transmits the collected data to the vehicle cloud server 30 as upload data “UD2”.
  • the vehicle cloud server 30 receives the upload data UD2 from the vehicle-mounted terminal 20, the vehicle cloud server 30 generates the upload data “UD1” based on the received upload data UD2, and transmits the generated upload data UD1 to the service cloud server 40 of the request source. ..
  • the data structures of the job requests JR1 and JR2 and the upload data UD1 and UD2 will be described in detail in the section "(5) Data structure ".
  • the job request JR1 transmitted from the service cloud server 40 to the vehicle cloud server 30 is an example of a “request signal”, and the job request JR2 transmitted from the vehicle cloud server 30 to the vehicle-mounted terminal 20 is an example of “transmission information”.
  • the upload data UD2 is an example of a “reception result”.
  • FIG. 3 is a block diagram showing the internal configuration of the in-vehicle terminal 20.
  • the vehicle-mounted terminal 20 mainly includes a communication unit 21, a storage unit 22, an input unit 23, a control unit 24, an interface 25, and an output unit 26.
  • Each element in the vehicle-mounted terminal 20 is connected to each other via a bus line 29.
  • the interface 25 is also connected to the sensor unit 27.
  • the communication unit 21 transmits upload data to the vehicle cloud server 30 and receives map data for updating the map DB from the vehicle cloud server 30.
  • the communication unit 21 may perform a process of transmitting a signal for controlling the vehicle to the vehicle and a process of receiving a signal regarding the state of the vehicle from the vehicle.
  • the storage unit 22 stores a program executed by the control unit 24 and information necessary for the control unit 24 to execute a predetermined process.
  • the storage unit 22 includes a non-volatile memory (internal storage).
  • the storage unit 22 stores a map DB, a sensor data cache, vehicle attribute information, a job request JR2 received from the vehicle cloud server 30 by the communication unit 21, and state count information.
  • the map DB is a database including, for example, road data, facility data, and feature data around the road.
  • the road data includes road/lane network data for route search, road shape data, traffic regulation data, and the like.
  • the feature data includes information such as road signs such as road signs and road markings such as stop lines, road marking lines such as center lines and structures along the road. Further, the feature data may include high-precision point cloud information of the feature used for estimating the vehicle position. In addition, various data required for position estimation may be stored in the map DB.
  • the sensor data cache is a cache memory that temporarily holds the output data of the sensor unit 27.
  • the vehicle attribute information indicates information about attributes of the vehicle V equipped with the in-vehicle terminal 20, such as vehicle type, vehicle ID, vehicle size such as vehicle length, vehicle width, vehicle height, and fuel type of the vehicle.
  • the status count information is information indicating the cumulative number of transitions for each status of the job requested by the job request JR2 during the valid period.
  • the state count information is, for example, information in which the number of transitions to the state is associated with each possible state of the job.
  • the control unit 24 updates the state count information every time the above-mentioned state transition is detected. The job state transition will be described later with reference to FIG.
  • the state count information is an example of “count information”.
  • the input unit 23 is a button operated by the user, a touch panel, a remote controller, a voice input device, or the like, and for example, an input designating a destination for route search, an input designating ON/OFF of automatic driving, and the like. Is received and the generated input signal is supplied to the control unit 24.
  • the output unit 26 is, for example, a display, a speaker, or the like that outputs under the control of the control unit 24.
  • the interface 25 performs an interface operation for supplying the output data of the sensor unit 27 to the control unit 24 and the sensor data cache.
  • the sensor unit 27 includes a plurality of external sensors such as a rider and a camera for recognizing the surrounding environment of the vehicle, and internal sensors such as a GPS receiver, a gyro sensor, a position sensor, and a three-axis sensor.
  • the lidar discretely measures the distance to an object existing in the external world, recognizes the surface of the object as a three-dimensional point cloud, and generates point cloud data.
  • the camera generates image data taken from the vehicle.
  • the position sensor is provided to detect the position of each external sensor, and the triaxial sensor is provided to detect the attitude of each external sensor.
  • the sensor unit 27 may include any external sensor and internal sensor other than the external sensor and the internal sensor shown in FIG.
  • the sensor unit 27 may include an ultrasonic sensor, an infrared sensor, a microphone, or the like as the external sensor.
  • the control unit 24 includes a CPU that executes a predetermined program on one or more platforms, and controls the entire in-vehicle terminal 20.
  • the control unit 24 functionally includes a position estimation unit, an object detection unit, and an upload data generation unit.
  • the control unit 24 functions as a computer that executes a program.
  • the control unit 24 is an example of a computer that executes a “generation unit” and a program, and the communication unit 21 and the control unit 24 are examples of a “reception unit” and a “transmission unit”.
  • the position estimation unit estimates the vehicle position (including the vehicle attitude) based on the output data of the sensor unit 27 and the map DB held in the sensor data cache.
  • the position estimation unit can execute various position estimation methods.
  • the position estimation unit further compares the vehicle position estimation method by dead reckoning (autonomous navigation) based on the output of a self-contained positioning sensor such as a GPS receiver and a gyro sensor, and the road data in the map DB with the autonomous navigation ( A vehicle position estimation method for performing map matching), output data of an external sensor such as a rider or a camera based on a predetermined object (landmark) existing around, and position information of the landmark indicated by the feature information of the map DB.
  • a vehicle position estimation method based on the above is executed.
  • the position estimation unit executes the position estimation method with the highest estimation accuracy among the currently-executable position estimation methods, and the own vehicle position indicating the vehicle position etc. obtained based on the executed position estimation method.
  • the information is supplied to the upload data generation unit
  • the object detection unit detects a predetermined object based on the point cloud information, image data, audio data, etc. output by the sensor unit 27.
  • the object detection unit extracts the feature data corresponding to the object detected by the sensor unit 27 from the map DB based on the vehicle position estimated by the position estimation unit. Then, the object detection unit, for example, when there is a difference between the position and shape of the object detected by the sensor unit 27 and the position and shape of the object indicated by the feature data extracted from the map DB, or When there is no feature data corresponding to the above, the information about the object detected by the sensor unit 27 is supplied to the upload data generation unit.
  • the upload data generation unit generates the upload data UD2 based on the vehicle position information supplied from the position estimation unit, the object data supplied from the object detection unit, the output data of the sensor unit 27 supplied from the sensor data cache, and the like. To generate.
  • the upload data generation unit includes the data specified by the data when the condition specified by the job request JR2 stored in the storage unit 22 is included in the upload data UD2, and the communication unit 21 uses the vehicle cloud server 30.
  • the upload data UD2 is transmitted to.
  • job status also simply referred to as “job status”
  • FIG. 4 is a diagram schematically showing the transition of job states.
  • an inactive state non-execution state
  • an active state execution state
  • an exception In the specific case, “Failed” is described.
  • the in-vehicle terminal 20 when receiving the job request JR2, the in-vehicle terminal 20 performs a predetermined authentication process and determines whether or not it is appropriate to accept the job request JR2. For example, the in-vehicle terminal 20 determines whether the vehicle ID or/and the driver ID specified in the job request JR2 matches the vehicle ID of the vehicle V or/and the driver ID of the driver of the vehicle V as the authentication process. ..
  • the job automatically transits to the inactive state. After that, when it is determined that the execution condition of the job indicated by the job request JR2 is satisfied, the job transitions to the active state, and when it is determined that the above execution condition is not satisfied after transitioning to the active state, the job is executed. Transitions to the inactive state.
  • the vehicle-mounted terminal 20 transmits the upload data UD2 indicating that the failure has occurred to the vehicle cloud server 30.
  • the job may be transferred from the active state or the inactive state to fail.
  • the in-vehicle terminal 20 terminates the job when the expiration date of the job has expired or when the job has failed, and deletes the job request JR2 from the storage unit 22.
  • the upload data UD2 indicating that a failure has occurred is an example of “failure information”.
  • FIG. 5A is a block diagram showing the internal configuration of the vehicle cloud server 30.
  • the vehicle cloud server 30 includes a communication unit 31, a storage unit 32, and a control unit 33.
  • the respective elements in the vehicle cloud server 30 are connected to each other via a bus line 39.
  • the communication unit 31 communicates with the vehicle-mounted terminal 20 of the vehicle V and the service cloud server 40 under the control of the control unit 33. Specifically, the communication unit 31 receives the job request JR1 from the service cloud server 40 and transmits the job request JR2 generated based on the job request JR1 to the vehicle-mounted terminal 20. The communication unit 31 also receives the upload data UD2 from the vehicle-mounted terminal 20 and transmits the upload data UD1 generated based on the upload data UD2 to the service cloud server 40.
  • the storage unit 32 includes ROM, RAM, etc., and stores programs for various processes executed by the vehicle cloud server 30.
  • the storage unit 32 is also used as a work memory when various processes are executed.
  • the storage unit 32 also stores vehicle information and transmission history information Ih.
  • the vehicle information is information about vehicles managed by the vehicle cloud.
  • the vehicle information corresponds to, for example, a vehicle ID or/and a driver ID for each vehicle, communication address information for transmitting data to the in-vehicle terminal 20 of the corresponding vehicle, and information regarding a service used by the vehicle. It is attached table information.
  • the transmission history information Ih is a table showing a history of transmitting the job request JR2 to the vehicle-mounted terminal 20 of each vehicle, and the detailed data structure will be described later.
  • the storage unit 32 may further store the job request JR1 received by the vehicle cloud server 30 from the service cloud server 40 and the history data of the upload data UD2 acquired by the vehicle cloud server 30 from the vehicle-mounted terminal 20.
  • the upload data UD2 received from each vehicle-mounted terminal 20 is stored in the storage unit 32 in association with the vehicle ID of the vehicle V on which the vehicle-mounted terminal 20 is mounted, the reception time, and the like.
  • the job request JR1 received from the service cloud server 40 may be stored in the storage unit 32 in association with information specifying the transmission source service cloud server 40 and the reception time.
  • the control unit 33 is composed of a computer such as a CPU and controls the entire vehicle cloud server 30. Specifically, the control unit 33 performs various processes by executing various programs stored in the storage unit 32.
  • the control unit 33 is an example of a “generation unit”, a “counting unit”, a “first counting unit”, and a “second counting unit”.
  • the communication unit 31 and the control unit 33 are examples of the “first receiving unit”, the “first transmitting unit”, the “second receiving unit”, the “third receiving unit”, and the “second transmitting unit”.
  • FIG. 5B is a block diagram showing the internal configuration of the service cloud server 40.
  • the service cloud server 40 includes a communication unit 41, a storage unit 42, and a control unit 43.
  • the respective elements in the service cloud server 40 are connected to each other via a bus line 49.
  • the communication unit 41 communicates with the vehicle cloud server 30 under the control of the control unit 43. Specifically, the communication unit 41 receives, from the vehicle cloud server 30, information corresponding to the provided information described below.
  • the storage unit 42 includes a ROM that is a non-volatile memory, a RAM that is a volatile memory, and the like, and stores programs for various processes executed by the service cloud server 40.
  • the storage unit 42 is also used as a working memory when various processes are executed.
  • the storage unit 42 may store the job request JR1 transmitted from the service cloud server 40 to the vehicle cloud server 30 and the history of the upload data UD1 acquired by the service cloud server 40 from the vehicle cloud server 30. ..
  • the job request JR1 and the upload data UD1 are stored in the storage unit 42 in association with information specifying the transmission destination or transmission source vehicle cloud server 30 and the transmission/reception time.
  • the control unit 43 is composed of a computer such as a CPU and controls the entire service cloud server 40. Specifically, the control unit 43 performs various processes by executing various programs stored in the storage unit 42.
  • Job Request when the job request JR1 and the job request JR2 are not distinguished, they are simply described as “job request”, and when the upload data UD1 and the upload data UD2 are not distinguished, they are simply described as “upload data”. .. (5-1) Job Request FIG. 6 shows an example of the data structure of a job request. As shown in the figure, the job request includes "version information”, "request identification information”, “attribute information”, “data collection condition information”, “state management flag”, and “collection data designation information”. including.
  • “Version information” is information that identifies the version of the specifications that specify the job request.
  • the “attribute information” is information that defines handling of the target job request.
  • “Request identification information” is identification information unique to the job request JR1 generated by the service cloud server 40. Each time the service cloud server 40 generates the job request JR1, the service cloud server 40 generates unique request identification information and includes it in the job request JR1. The “request identification information” of the job request JR2 may be the same as or different from the “request identification information” of the job request JR1. In the latter case, the vehicle cloud server 30 sets the unique identification information for each job request JR2 transmitted to the vehicle-mounted terminal 20 as the "request identification information” of the job request JR2.
  • the vehicle cloud server 30 stores a table or the like that associates the “request identification information” of the job request JR1 with the “request identification information” of the job request JR2 generated based on the job request JR1.
  • the "request identification information" of the job request JR1 is used as information (job ID) for identifying the job.
  • Data collection condition information is information indicating conditions for collecting data.
  • the “data collection condition information” is the geographical condition for the vehicle-mounted terminal 20 to generate the upload data UD2, the temporal condition for generating the upload data UD2, the event, the vehicle ID of the vehicle V, and/or the driver of the vehicle V. Is information indicating the driver ID of.
  • the geographical condition for generating the upload data UD2 is, for example, a condition for specifying a road or an area for generating the upload data UD2
  • the temporal condition for generating the upload data UD2 is, for example, uploading. It is a condition that specifies a time constraint such as a time zone or an interval for generating the data UD2.
  • the event indicates an event or the like that triggers the generation of the upload data UD2, and for example, the occurrence of a shock (that is, an accident) of a predetermined degree or more, the occurrence of sudden braking, or the like is designated as the above-mentioned event.
  • the data collection condition information is an example of “condition information”.
  • “Collected data specification information” is information that specifies the collected data to be included as upload data when the job execution condition indicated by the data collection condition information is satisfied.
  • the collected data designation information is, for example, information on vehicle acceleration/deceleration, information on vehicle speed, information on vehicle running locus (that is, time-series vehicle position/posture), information on departure point and destination, predetermined information before and after accident occurrence. For example, the shooting information of the camera in time.
  • the contents designated as the data collection condition information and the collection data designation information are arbitrarily set by the service company operated by the service cloud server 40 that generates the job request.
  • the data collection condition information and the collection data designation information are examples of “command information”.
  • the “state management flag” is a flag (also referred to as “state management flag Fs”) that specifies the necessity of uploading the state count information.
  • the status management flag Fs has a value of either “0” indicating that it is invalid or “1” indicating that it is valid, and if it is 1 (valid), the status count information is uploaded. It indicates that it is necessary, and if 0 (invalid), it indicates that uploading of the status count information is unnecessary.
  • the state management flag Fs is an example of flag information.
  • the state management flag Fs may be included in any field of the data collection condition information, the attribute information, or the collection data designation information, instead of being provided in a single field in the job request.
  • the vehicle cloud server 30 when the job request JR1 transmitted from the service cloud server 40 to the vehicle cloud server 30 includes a valid state management flag Fs, the vehicle cloud server 30 sends a job to the job indicated by the job request JR1. The number of vehicles related to the state is totaled. Then, the vehicle cloud server 30 transmits the totalized result to the service cloud server 40 as upload data UD1.
  • the data structure of the upload data UD1 including the above-mentioned aggregation result will be described later with reference to FIG.
  • the in-vehicle terminal 20 determines that the vehicle cloud server 30 is the number of vehicles related to the above-mentioned job state. Generate the information necessary for the aggregation of. Then, the vehicle-mounted terminal 20 includes the generated information in the upload data UD2 and transmits it to the vehicle cloud server 30.
  • the data structure of the upload data UD2 transmitted by the vehicle-mounted terminal 20 will be described later with reference to FIG.
  • the job request may include any information other than the information shown in FIG.
  • the job request may include address information that specifies a transmission destination for transmitting the upload data to the service cloud server 40 or the vehicle cloud server 30 that is the generation source of the job request.
  • the job request may include a job ID for identifying the job, in addition to the request identification information.
  • each job request JR1 includes different request identification information for each job request JR1 and all the job request JR1.
  • a job ID common to the job request JR1 may be included.
  • FIG. 7 shows an example of the data structure of the transmission history information Ih.
  • the transmission history information Ih corresponds to the transmission history of the job request JR2, and in the example of FIG. 7, includes at least a “vehicle ID” and a “job ID”.
  • Vehicle ID is a vehicle ID corresponding to the in-vehicle terminal 20 of the transmission destination to which the vehicle cloud server 30 holding the transmission history information Ih has transmitted the job request JR2.
  • the “job ID” is identification information of the job requested by the job request JR2 transmitted to the vehicle-mounted terminal 20.
  • the vehicle cloud server 30 may record the request identification information of the job request JR1 used to generate the job request JR2 as the “job ID” of the transmission history information Ih.
  • the transmission history information Ih may include any item other than the vehicle ID and the job ID.
  • the transmission history information Ih may further include the identification information of the service cloud that is the generation source of the job request JR1 used to generate the job request JR2 transmitted to the vehicle-mounted terminal 20. This identification information may be arbitrary information (for example, a communication address or the like) for identifying the service cloud.
  • the vehicle cloud server 30 transmits a corresponding record. Delete from the history information Ih. That is, in this case, the vehicle cloud server 30 deletes the record including the vehicle ID corresponding to the vehicle-mounted terminal 20 that is the transmission source of the upload data UD2 and the job ID indicating the failed job from the transmission history information Ih. As a result, only the record indicating the combination of the vehicle ID of the vehicle-mounted terminal 20 for which the job request JR2 is normally received and the job ID corresponding to the job instructed by the job request JR2 is recorded in the transmission history information Ih. become.
  • the vehicle cloud server 30 can suitably calculate the number of inactive vehicles (also referred to as “inactive vehicle number”) by referring to the transmission history information Ih.
  • the vehicle cloud server 30 calculates the number of records of the transmission history information Ih in which the job ID corresponding to the received job request JR1 is recorded, as the number of vehicles that transmitted the job request JR2.
  • the job state is automatically set to the inactive state when the authentication process is successful, the job indicated by the job request JR2 for which the authentication process is successful in the vehicle-mounted terminal 20 is It is always inactive. If the authentication process fails and a failure occurs, the upload data UD2 indicating the failure is transmitted to the vehicle cloud server 30, and the vehicle cloud server 30 deletes the corresponding record from the transmission history information Ih. To be done.
  • the vehicle cloud server 30 refers to the transmission history information Ih and counts the number of vehicles that have transmitted the job request JR2 for each job, so that the number of vehicles that have been authenticated and accepted for the job (the number of inactive vehicles). ) Can be suitably specified for each job. Note that, as will be described later, the information on the identified number of inactive vehicles is included in the upload data UD1 and transmitted to the service cloud server 40.
  • FIG. 8 is an example of the data structure of the upload data UD2 transmitted from the vehicle-mounted terminal 20 to the vehicle cloud server 30 based on the job request JR2.
  • the upload data UD2 includes “version information”, “request identification information”, “collected data”, and “state count information”.
  • “Version information” is information that identifies the version of the specifications that specify the upload data UD2. For this "version information”, for example, the same content as the "version information” included in the previously received job request JR2 is specified.
  • the “request identification information” indicates the request identification information of the job request JR2 received earlier.
  • “Collection data” is data collected by the vehicle-mounted terminal 20 based on the previously received job request JR2, and corresponds to the execution result of the requested job. This collected data is data designated by the “collected data designation information” of the job request JR2 received earlier. The collected data is an example of “response information”.
  • the “state count information” is the state count information stored in the storage unit 22 by the vehicle-mounted terminal 20 based on the previously received job request JR2, and includes the “active transition count” and the “inactive transition count”.
  • the “number of active transitions” indicates the number of times the job has transitioned to the active state (that is, the number of times the active state has been reached) during the valid period of the job requested by the previously received job request JR2.
  • the “number of times of transition to inactivity” indicates the number of times the job has transitioned to the inactive state (that is, the number of times of transition to the inactive state) during the valid period of the job requested by the previously received job request JR2.
  • the state count information is an example of “number of times information”.
  • the vehicle-mounted terminal 20 When the previously received job request JR2 includes the valid state management flag Fs, the vehicle-mounted terminal 20 starts counting the number of transitions of the active state and the inactive state for the target job, and determines the number of these transitions. The information is stored in the storage unit 22 as state count information. Then, the in-vehicle terminal 20 updates the status count information each time the job status of the target job is changed. Then, the vehicle-mounted terminal 20 includes the state count information stored in the storage unit 22 in the upload data UD2 when the upload data UD2 is generated.
  • FIG. 9 is an example of the data structure of the upload data UD1 transmitted from the vehicle cloud server 30 to the service cloud server 40 based on the job request JR1.
  • the upload data UD2 includes “version information”, “request identification information”, “collected data”, “inactive vehicle number”, “active vehicle number”, and “active total vehicle number”. And “the number of data collection vehicles”.
  • “Version information” is information for identifying the version of the specification that defines the upload data UD1. For this "version information”, for example, the same content as the "version information” included in the previously received job request JR1 is specified.
  • the “request identification information” indicates the request identification information of the job request JR1 received earlier.
  • the “collected data” corresponds to the execution result of the job requested by the job request JR1, and is the data designated by the “collected data designation information” of the job request JR1.
  • the vehicle cloud server 30 transmits the job request JR2 generated based on the job request JR1 to a plurality of vehicle-mounted terminals 20 and receives the upload data UD2 which is the response from each vehicle-mounted terminal 20, thereby uploading it as “collected data”. Collect the data to be included in the data UD1.
  • the vehicle cloud server 30 may include the data obtained by directly extracting the collected data included in the upload data UD2 received from each in-vehicle terminal 20 as the “collected data” in the upload data UD1 and included in each upload data UD2.
  • the statistical data calculated by performing a predetermined statistical process on the collected data to be collected may be included in the upload data UD1 as “collected data”.
  • “Number of inactive vehicles” is the number of vehicles whose job status requested by job request JR1 has become inactive.
  • the vehicle cloud server 30 calculates the number of inactive vehicles for the job requested by the job request JR1 by referring to the transmission history information Ih. Specifically, the vehicle cloud server 30 records, in the records recorded in the transmission history information Ih, identification information (for example, request identification information) of a job requested by the job request JR1 as a “job ID”. Is calculated as the number of inactive vehicles.
  • the vehicle cloud server 30 can suitably calculate the number of inactive vehicles for the job requested by the job request JR1 by referring to the transmission history information Ih. In the second example, the vehicle cloud server 30 calculates based on the state count information included in the upload data UD2.
  • the vehicle cloud server 30 calculates, as the number of inactive vehicles for the job, the number of the in-vehicle terminals 20 that are the senders of the upload data UD2 whose number of inactive transitions indicated by the above state count information is 1 or more. ..
  • “Number of active vehicles” is the number of vehicles whose job status requested by job request JR1 has become active.
  • the vehicle cloud server 30 refers to the number of active transitions indicated by the state count information of the upload data UD2 received from each in-vehicle terminal 20 as a response to the job request JR2 generated based on the job request JR1 to obtain the job.
  • the number of active vehicles for the job requested by the request JR1 is calculated. Specifically, the vehicle cloud server 30 calculates, as the number of active vehicles of the job, the number of vehicle-mounted terminals 20 that have transmitted the upload data UD2 in which the number of active transitions of the job is 1 or more.
  • the vehicle cloud server 30 is requested by the job request JR2 by referring to the number of active transitions indicated by the status count information included in the upload data UD2 received from the vehicle-mounted terminal 20 that is the destination of the job request JR2.
  • the number of active vehicles for each job can be calculated appropriately.
  • the total number of active vehicles is the total number of vehicles whose job status requested by job request JR1 has become active.
  • the vehicle cloud server 30 accumulates the number of active transitions indicated by the state count information included in the upload data UD2 received from each in-vehicle terminal 20 as a response to the job request JR2 generated based on the job request JR1. , The total number of active vehicles for the job requested by the job request JR1 is calculated.
  • the vehicle cloud server 30 is requested by the job request JR2 by referring to the number of active transitions indicated by the status count information included in the upload data UD2 received from the vehicle-mounted terminal 20 that is the destination of the job request JR2. It is possible to preferably calculate the total number of active vehicles for each job.
  • the number of inactive vehicles, the number of active vehicles, and the total number of active vehicles are examples of “moving body number information”.
  • the number of data collection vehicles is the number of vehicles that have uploaded the collection data for the job requested by job request JR1.
  • the vehicle cloud server 30 is the transmission source of the upload data UD2 that includes the collected data among the upload data UD2 received from each vehicle-mounted terminal 20 as a response to the job request JR2 generated based on the job request JR1.
  • the number of vehicles is calculated as the number of data collection vehicles.
  • the service cloud server 40 which has received the upload data UD1 having the data structure shown in FIG. 9 as a response to the job request JR1, receives the reliability of the collected data based on the statistics of the number of vehicles included in the upload data UD1. And the effectiveness of data collection requests and cost efficiency can be determined.
  • the service cloud server 40 generates the ratio information indicating the ratio of the number of active vehicles or/and the number of data collection vehicles to the number of inactive vehicles, thereby improving the effectiveness and cost efficiency of the data collection request based on the job request JR1.
  • the indicated index can be calculated appropriately.
  • the service cloud server 40 can determine that the higher the ratio indicated by the ratio information, the higher the effectiveness and cost efficiency of the data collection request.
  • the service cloud server 40 suitably determines the reliability of the collected data included in the upload data UD1 received from the vehicle cloud server 30 by referring to the number of active vehicles, the total number of active vehicles, the number of data collection vehicles, and the like. can do.
  • the service cloud server 40 can determine that the higher the number of active vehicles, the total number of active vehicles, and the number of data collection vehicles, the higher the reliability of the collected data received from the vehicle cloud server 30.
  • the data structure example of the upload data UD1 is not limited to that shown in FIG.
  • the upload data UD1 may include an inactive total vehicle number indicating the total number of vehicles in the inactive state.
  • the vehicle cloud server 30 determines the above-mentioned total number of inactive vehicles by accumulating the number of inactive transitions indicated by the state count information included in the upload data UD1 received from each in-vehicle terminal 20.
  • FIG. 10 is a flowchart showing a processing procedure executed by the in-vehicle terminal 20 when the job request JR2 including the valid state management flag Fs is received.
  • the vehicle-mounted terminal 20 repeatedly executes the process of the flowchart shown in FIG.
  • the in-vehicle terminal 20 receives the job request JR2 including the valid state management flag Fs from the vehicle cloud server 30 (step S101). Then, the vehicle-mounted terminal 20 performs a predetermined authentication process on the job request JR2 and determines whether the received job request JR2 can be authenticated (step S102).
  • step S102 when the authentication process of the received job request JR2 is successful (step S102; Yes), the in-vehicle terminal 20 includes the valid state management flag Fs in the job request JR2. Information is generated (step S103).
  • the in-vehicle terminal 20 automatically changes the job state to the inactive state, and therefore the state count information in which the number of active transitions is 0 and the number of inactive transitions is 1 is displayed. To generate.
  • step S110 when the authentication processing of the received job request JR2 fails (step S102; No), the vehicle-mounted terminal 20 transmits the upload data UD2 indicating that the authentication has failed (that is, a failure) to the vehicle cloud server 30. (Step S110).
  • the vehicle-mounted terminal 20 determines whether or not the job execution condition indicated by the "data collection condition information" included in the received job request JR2 is satisfied (step S104). Then, when the vehicle-mounted terminal 20 determines that the job execution condition is satisfied (step S104; Yes), it is designated by the “collected data designation information” included in the job request JR2 using the data output by the sensor unit 27. The collected data is collected (step S105). In this case, the job status of the job is active. On the other hand, when the vehicle-mounted terminal 20 determines that the job execution condition is not satisfied (step S104; No), the process proceeds to step S106 without performing the process of step S105. In this case, the job status of the job is inactive.
  • the vehicle-mounted terminal 20 updates the status count information according to the presence/absence of a job status transition (step S106). Specifically, when the vehicle-mounted terminal 20 determines that the job has transitioned from the inactive state to the active state based on the determination process of step S104, the in-vehicle terminal 20 counts the state so as to increase the number of active transitions for the job by 1. Update information. On the other hand, when the vehicle-mounted terminal 20 determines that the job has transitioned from the active state to the inactive state based on the determination process of step S104, the on-vehicle terminal 20 displays the state count information so as to increase the inactive transition count for the job by one. Update.
  • the vehicle-mounted terminal 20 determines whether or not it is the transmission timing of the upload data UD2 (step S107).
  • the transmission timing of the upload data UD2 may be determined by various rules. For example, the vehicle-mounted terminal 20 may transmit the upload data UD2 only once at the end of the job expiration date, or may transmit the upload data UD2 each time data collection is performed in step S105. Alternatively, the upload data UD2 may be transmitted at predetermined time intervals.
  • the specific transmission timing of the upload data UD2 is set to the timing designated by the data collection condition information included in the job request JR2 received from the vehicle cloud server 30, for example.
  • the in-vehicle terminal 20 includes the collected data collected in step S105 and the upload data UD2 including the state count information indicating the number of inactive transitions and the number of active transitions. (See FIG. 8) is transmitted to the vehicle cloud server 30 (step S108).
  • the state count information may be included only in the upload data UD2 transmitted at the last transmission timing.
  • the in-vehicle terminal 20 since the vehicle-mounted terminal 20 includes the final number of active transitions and the number of inactive transitions in the valid period of the job in the upload data UD2, the in-vehicle terminal 20 stores the upload data UD2 including at least the state count information at the end of the job valid period. It may be transmitted to the vehicle cloud server 30.
  • the upload data UD2 in this case may not include the collected data. That is, in this case, the vehicle-mounted terminal 20 does not necessarily have to match the transmission timings of the collected data and the state count information.
  • step S109 the in-vehicle terminal 20 determines whether or not the job is completed. For example, when the expiration date of the job is indicated in the “data collection condition information” included in the received job request JR2, it is determined whether the expiration date of the job has expired. Then, when the vehicle-mounted terminal 20 determines that the job is finished (step S109; Yes), the process of the flowchart is finished. On the other hand, when the vehicle-mounted terminal 20 determines that it is not the transmission timing of the upload data UD2 (step S107; No) or determines that the job has not ended (step S109; No), the process proceeds to step S104. return.
  • FIG. 11 is a flowchart showing a processing procedure executed by the vehicle cloud server 30 which has received the job request JR1 including the valid state management flag Fs.
  • the vehicle cloud server 30 receives the job request JR1 including the valid state management flag Fs from the service cloud server 40 (step S201). Then, the vehicle cloud server 30 refers to the vehicle information stored in the storage unit 32, and transmits the job request JR2 generated based on the job request JR1 to the vehicle-mounted terminal 20 of the vehicle managed by the vehicle cloud server 30. (Step S202).
  • the vehicle cloud server 30 receives the upload data UD2 from the vehicle-mounted terminal 20 that is the transmission destination of the job request JR2, and stores it in the storage unit 32 (step S203). Then, the vehicle cloud server 30 repeatedly receives and stores the upload data UD2 in step S203 until the predetermined collection period of the upload data UD2 ends (step S204; No). As a result, the vehicle cloud server 30 stores the upload data UD2 supplied from the vehicle-mounted terminals 20 of a plurality of vehicles.
  • the vehicle cloud server 30 receives the upload data UD2 received periodically or intermittently within the collection period of the upload data UD2. May be sequentially transmitted to the service cloud server 40 as the upload data UD1 without being stored in the storage unit 32. In this case, the vehicle cloud server 30 transmits to the service cloud server 40 only the state count information totaled in step S205 described below after the collection period of the upload data UD2 ends.
  • the vehicle cloud server 30 collects the number of inactive vehicles, the number of active vehicles, the total number of active vehicles, the number of data collection vehicles, and the like. Perform (step S205). For example, the vehicle cloud server 30 calculates the number of active vehicles and the total number of active vehicles based on the number of active transitions indicated by the state count information included in the upload data UD2 received and stored in step S203. Further, the vehicle cloud server 30 calculates the number of inactive vehicles based on either the transmission history information Ih or the number of inactive transitions indicated by the state count information, and regarding the number of data collection vehicles, upload data including collected data.
  • the vehicle cloud server 30 uses the state count information included in the last received upload data UD2 as the above-mentioned information. It is good to do a tally.
  • the vehicle cloud server 30 transmits the upload data UD1 (see FIG. 9) including the aggregation result in step S205 to the service cloud server 40 that is the request source of the job request JR1 (step S206).
  • the service cloud server 40 that has generated the job request JR1 receives the upload data UD1 from the vehicle cloud server 30.
  • the service cloud server 40 determines the reliability of the returned collection data, the validity of the data collection request, and the cost efficiency based on the received upload data UD1.
  • FIG. 12 shows a configuration example of the job distribution system in this application example.
  • the job delivery system shown in FIG. 12 is equipped with a first service cloud server 40A operated by a map company, a first service cloud server 40A operated by a local government, a vehicle cloud server 30 operated by a taxi company, and an in-vehicle terminal 20.
  • the first service cloud server 40A functions as the service cloud server 40 of the embodiment
  • the second service cloud server 40B receives the data collected by the first service cloud server 40A from the first service cloud server 40A. I shall.
  • the taxi vehicle V is a vehicle that frequently runs on the front street of two railway stations, and there are a total of 80 taxi vehicles. There is a taxi pool at each station.
  • Fig. 13 is a bird's-eye view showing the station front street of A station.
  • a main road 50 a station road 51 branched from the main road 50, and a taxi pool 52 that can join the station road 51 exist near the A station.
  • the first service cloud server 40A as the “collected data designation information” shown in FIG. 6, travel time and stay (stop) when passing the station road 51 from the taxi pool 52 to the intersection 53 to the intersection 54.
  • a job request JR1 is generated which specifies the time and the running time and the staying time from the intersection 54 to entering the taxi pool 52.
  • "data collection condition information” (1 week from Monday to Sunday is defined as the job expiration date, and 6 am to 7 pm is defined as the job execution time period) ( (See FIG. 6) is further included.
  • the first service cloud server 40A calculates the average running time and the average residence time of each time zone divided into 10-minute intervals based on the upload data UD1 received from the vehicle cloud server 30 as a response to the job request JR1. To do. Then, the first service cloud server 40A transmits the calculated average travel time and average residence time as upload data to the second service cloud server 40B. In this case, the second service cloud server 40B examines the content of the traffic jam information based on the upload data received from the first service cloud server 40A. Similarly, for the B station, the first service cloud server 40A also calculates the average travel time and the average residence time regarding the road in front of the station based on the upload data UD1 received from the vehicle cloud server 30, and the second service cloud server 40A. The upload data including the calculation result is transmitted to 40B.
  • the first service cloud server 40A includes the valid status management flag Fs in the job request JR1 to receive the statistical data of the number of vehicles related to the job status from the vehicle cloud server 30 by the upload data UD1.
  • the second service cloud server 40B can consider the statistical data of the number of vehicles related to the job status and the like when examining the contents of the traffic jam information in front of each station, and therefore the traffic jam information should be accurately examined. You can In addition, when there are no or very few measured vehicles (ie, very few active vehicles), there is no taxi inflow to the road in front of the station due to heavy traffic congestion, or there is no demand for taxis.
  • ⁇ Second embodiment> The vehicle-mounted terminal 20 according to the second embodiment, instead of transmitting the state count information indicating the number of transitions to each job state to the vehicle cloud server 30, history information regarding job state transitions (also referred to as “state history information”). ) Is transmitted to the vehicle cloud server 30.
  • state history information also referred to as “state history information”.
  • the configurations of the vehicle cloud server 30 and the service cloud server 40, the data structures of the job requests JR1 and JR2, the data structure of the upload data UD1 and the like are the same as those in the first embodiment, and therefore the description thereof will be omitted.
  • FIG. 14 is a block diagram showing the internal configuration of the vehicle-mounted terminal 20 according to the second embodiment.
  • the storage unit 22 of the vehicle-mounted terminal 20 stores state history information.
  • the state history information is history information of the state transition of the job requested by the job request JR2 during a valid period.
  • the state history information is, for example, table information in which a transition state of a job and a transition time are associated with each requested job (for example, with each request identification information).
  • the vehicle-mounted terminal 20 stores the transition of the job state for the target job in the storage unit 22 as the state history information.
  • FIG. 15 is an example of the data structure of the upload data UD2 according to the second embodiment.
  • the upload data UD2 according to the second embodiment includes “state history information” instead of the state count information.
  • the in-vehicle terminal 20 collects the collected data which is the execution result of the job requested by the job request JR2 and the state history corresponding to the job.
  • the information is included in the upload data UD2 and transmitted to the vehicle cloud server 30.
  • the vehicle cloud server 30 that has received the upload data UD2 can suitably calculate the number of inactive transitions and the number of active transitions of the in-vehicle terminal 20 that is the transmission source of the upload data UD2 by referring to the state history information. It will be possible.
  • the state history information is an example of “counting information”.
  • FIG. 16 is a flowchart showing a processing procedure executed by the vehicle-mounted terminal 20 according to the second embodiment when the job request JR2 including the valid state management flag Fs is received.
  • the in-vehicle terminal 20 repeatedly executes the process of the flowchart shown in FIG.
  • the vehicle-mounted terminal 20 receives the job request JR2 including the valid state management flag Fs from the vehicle cloud server 30 (step S301), and when the authentication processing of the received job request JR2 is successful (step S302; Yes), the job request The state history information for the job requested by JR2 is generated (step S303). In this case, since the job state is automatically set to the inactive state, the vehicle-mounted terminal 20 generates the state history information recording the transition to the inactive state.
  • step S304 when the vehicle execution condition satisfies the job execution condition indicated by the “data collection condition information” included in the received job request JR2 (step S304; Yes), the in-vehicle terminal 20 uses the data output by the sensor unit 27 to request the job.
  • the data designated by the “collected data designation information” included in JR2 is collected (step S305). In this case, the job status of the job is active.
  • step S304; No the process proceeds to step S306 without performing the process of step S305. In this case, the job status of the job is inactive.
  • the in-vehicle terminal 20 updates the status history information according to the presence/absence of a job status transition (step S306). Specifically, the in-vehicle terminal 20 compares with the latest job state indicated by the state history information, and when it determines that the current job state is transiting from the inactive state to the active state, the in-vehicle terminal 20 changes to the active state. If a record indicating the transition is added to the status history information for the target job and it is determined that the transition is from the active state to the inactive state, the record indicating the transition to the inactive state is added to the target job. Add to status history information.
  • step S307 when it is the transmission timing of the upload data UD2 (step S307; Yes), the vehicle-mounted terminal 20 uploads the upload data UD2 including the collected data and the status history information collected in step S305 (FIG. 15). Reference) to the vehicle cloud server 30 (step S308).
  • step S309; Yes the process of the flowchart is completed.
  • step S309; No the process is returned to step S304.
  • FIG. 17 is a flowchart showing a processing procedure executed by the vehicle cloud server 30 according to the second embodiment which receives the job request JR1 including the valid state management flag Fs.
  • the vehicle cloud server 30 receives the job request JR1 including the valid status management flag Fs from the service cloud server 40 (step S401). Then, the vehicle cloud server 30 refers to the vehicle information stored in the storage unit 32, and transmits the job request JR2 generated based on the job request JR1 to the vehicle-mounted terminal 20 of the vehicle managed by the vehicle cloud server 30. (Step S402).
  • the vehicle cloud server 30 receives the upload data UD2 including the status history information from the vehicle-mounted terminal 20 and stores it in the storage unit 32 (step S403). Then, the vehicle cloud server 30 repeatedly receives and stores the upload data UD2 in step S403 until the predetermined collection period of the upload data UD2 ends (step S404; No).
  • step S404 when the vehicle cloud server 30 determines that the collection period of the upload data UD2 has ended (step S404; Yes), it is determined for each vehicle based on the state history information included in the upload data UD2 received and stored in step S403.
  • the number of active transitions is calculated (step S405).
  • the vehicle cloud server 30 may calculate the number of inactive transitions and the like based on the state history information in addition to the number of active transitions.
  • the vehicle cloud server 30 determines whether or not the above-mentioned status history information included in the upload data UD2 received last is used. It is good to calculate.
  • the vehicle cloud server 30 totals the number of inactive vehicles, the number of active vehicles, the total number of active vehicles, the number of data collection vehicles, etc. (step S406). For example, the vehicle cloud server 30 calculates the number of active vehicles and the total number of active vehicles based on the number of active transitions for each vehicle calculated in step S405. Further, the vehicle cloud server 30 calculates the number of inactive vehicles based on either the transmission history information Ih or the number of inactive transitions calculated in step S405, and regarding the number of data collecting vehicles, upload data including collected data. It is calculated by counting the in-vehicle terminals 20 that are the senders of UD2.
  • the vehicle cloud server 30 transmits the upload data UD1 (see FIG. 9) including the aggregation result in step S405 to the service cloud server 40 that is the request source of the job request JR1 (step S407).
  • the service cloud server 40 that has generated the job request JR1 receives the upload data UD1 from the vehicle cloud server 30.
  • the service cloud server 40 determines the reliability of the returned collection data, the validity of the data collection request, and the cost efficiency based on the received upload data UD1.
  • the vehicle-mounted terminal 20 sends information indicating the current job status (also simply referred to as “status information”) to the vehicle cloud server 30 instead of the status count information or status history information.
  • status information also simply referred to as “status information”
  • the configuration of the service cloud server 40, the data structure of the job requests JR1 and JR2, the data structure of the upload data UD1 and the like are the same as those in the first and second embodiments, and therefore the description thereof will be omitted.
  • FIG. 18 is an example of the data structure of the upload data UD2 according to the third embodiment.
  • the upload data UD2 according to the third example includes “state information” instead of the state count information of the first example or the state history information of the second example.
  • the vehicle-mounted terminal 20 collects the collected data which is the execution result of the job requested by the job request JR2 and the current job status corresponding to the job. Is included in the upload data UD2 and transmitted to the vehicle cloud server 30. In this case, the vehicle-mounted terminal 20 transmits the upload data UD2 to the vehicle cloud server 30 at the time interval designated by the data collection condition information included in the job request JR2 received from the vehicle cloud server 30.
  • the transmission timing of the upload data UD2 in this case may be set for each job, or may be uniform for a plurality of jobs.
  • the state information is an example of “counting information”.
  • FIG. 19 is a diagram schematically showing the internal configuration of the vehicle cloud server 30 according to the third embodiment.
  • the vehicle cloud server 30 stores state history information in the storage unit 32.
  • the vehicle cloud server 30 generates, for example, state history information for each job and each vehicle ID based on the state information included in the upload data UD2 received from the vehicle-mounted terminal 20.
  • the status history information is information that associates the job status indicated by the status information with the reception time or generation time of the status information for each request identification information and vehicle ID.
  • the vehicle cloud server 30 stores the number of inactive vehicles, the number of active vehicles, the total number of active vehicles, the number of data collecting vehicles, etc., as in the first and second embodiments. The tabulation can be performed appropriately.
  • FIG. 20 is a flowchart showing a processing procedure executed by the vehicle-mounted terminal 20 according to the third embodiment when the job request JR2 including the valid state management flag Fs is received.
  • the vehicle-mounted terminal 20 repeatedly executes the process of the flowchart shown in FIG.
  • the vehicle-mounted terminal 20 receives the job request JR2 including the valid state management flag Fs from the vehicle cloud server 30 (step S501), and if the received job request JR2 is successfully authenticated (step S502; Yes), the vehicle-mounted terminal 20 receives the job request JR2. It is determined whether or not the job execution condition indicated by the job request JR2 is satisfied (step S503). When the job execution condition is satisfied (step S503; Yes), the data output by the sensor unit 27 is used to collect the data specified by the job request JR2 (step S504). On the other hand, when the vehicle-mounted terminal 20 determines that the job execution condition is not satisfied (step S503; No), the process proceeds to step S505 without performing the process of step S504.
  • the vehicle-mounted terminal 20 determines whether or not it is the transmission timing of the upload data UD2 (step S505).
  • the transmission timing of the upload data UD2 may be determined for each job, or may be uniform for a plurality of jobs.
  • the in-vehicle terminal 20 when it is the transmission timing of the upload data UD2 (step S505; Yes), the in-vehicle terminal 20 generates status information indicating the current job status (step S505). Specifically, the in-vehicle terminal 20 generates status information indicating that the job is in the inactive state when the job execution condition is not satisfied, and when the job execution condition is satisfied, , Generates status information indicating that the job is in the active status.
  • the vehicle-mounted terminal 20 transmits the upload data UD2 including the state information generated in step S506 and the collected data collected in step S504 to the vehicle cloud server 30 (step S507). Then, when the vehicle-mounted terminal 20 determines that the job should be ended (step S508; Yes), the process of the flowchart is ended.
  • step S505 when it is not the transmission timing of the upload data UD2 (step S505; No) or when the job is not completed (step S508; No), the in-vehicle terminal 20 returns the process to step S503. As a result, the in-vehicle terminal 20 repeatedly executes the processes of steps S503 to S507 until the expiration date of the job ends.
  • FIG. 21 is a flowchart showing a processing procedure executed by the vehicle cloud server 30 according to the third embodiment which receives the job request JR1 including the valid state management flag Fs.
  • the vehicle cloud server 30 receives the job request JR1 including the valid state management flag Fs from the service cloud server 40 (step S601). Then, the vehicle cloud server 30 refers to the vehicle information stored in the storage unit 32, and transmits the job request JR2 generated based on the job request JR1 to the vehicle-mounted terminal 20 of the vehicle managed by the vehicle cloud server 30. (Step S602).
  • the vehicle cloud server 30 receives the upload data UD2 including the status information from the vehicle-mounted terminal 20 and stores it in the storage unit 32 (step S603). Then, the vehicle cloud server 30 updates the status history information corresponding to the job and vehicle ID indicated by the received upload data UD2 (step S604). For example, the vehicle cloud server 30 adds a record including the job status indicated by the status information of the received upload data UD2 and the time information to the target status history information. Then, the vehicle cloud server 30 repeats steps S603 and S604 until the predetermined collection period of the upload data UD2 ends (step S605; No).
  • the vehicle cloud server 30 determines that the collection period of the upload data UD2 has ended (step S605; Yes)
  • the vehicle cloud server 30 calculates the number of active transitions for each vehicle based on the state history information stored in the storage unit 32. (Step S606).
  • the vehicle cloud server 30 may calculate the number of inactive transitions and the like based on the state history information in addition to the number of active transitions.
  • the vehicle cloud server 30 totals the number of inactive vehicles, the number of active vehicles, the total number of active vehicles, the number of data collection vehicles, etc. (step S607). For example, the vehicle cloud server 30 calculates the number of active vehicles and the total number of active vehicles based on the number of active transitions for each vehicle calculated in step S605. In addition, the vehicle cloud server 30 calculates the number of inactive vehicles based on either the transmission history information Ih or the number of inactive transitions calculated in step S605, and regarding the number of data collection vehicles, upload data including collected data. It is calculated by counting the in-vehicle terminals 20 that are the senders of UD2.
  • the vehicle cloud server 30 transmits the upload data UD1 (see FIG. 9) including the aggregation result in step S605 to the service cloud server 40 which is the request source of the job request JR1 (step S608).
  • the service cloud server 40 that has generated the job request JR1 receives the upload data UD1 from the vehicle cloud server 30.
  • the service cloud server 40 determines the reliability of the returned collection data, the validity of the data collection request, and the cost efficiency based on the received upload data UD1.
  • the vehicle cloud server 30 receives the job request JR1 issued by the service cloud server 40, and sends the job request JR2 corresponding to the job request JR1 to the in-vehicle terminals 20 of a plurality of vehicles. Further, the vehicle cloud server 30 receives the upload data UD2, which is a reception result indicating that the vehicle-mounted terminals 20 of a plurality of vehicles have successfully received the job request JR2, and based on the upload data UD2, normalizes the job request JR2. The number of inactive vehicles, which is the number of vehicles that have been successfully received, is counted.
  • the vehicle cloud server 30 receives the upload data UD2 in which the number of active transitions of the job is 1 or more, and indicates the number of active vehicles and the total number of active vehicles that represent the number of vehicles and the total number of vehicles that have transmitted the upload data UD2. Count. Then, the vehicle cloud server 30 transmits, to the service cloud server 40, upload data UD1 including information on the number of inactive vehicles, the number of active vehicles, and the number of active total vehicles.
  • the vehicle cloud server 30 receives the job request JR1 issued by the service cloud server 40. Then, the vehicle cloud server 30 determines whether the data collection condition information and the collected data designation information corresponding to the job request JR1 and the job status indicated by the data collection condition information and the collected data designation information satisfy the predetermined condition.
  • Job request JR2 including state count information for counting the number of active transitions, which is the number of times the job has been in the active state, that is, the state history flag, or the state management flag Fs indicating transmission of the state information To generate. Then, the vehicle cloud server 30 transmits the job request JR2 to the vehicle-mounted terminals 20 of the plurality of vehicles.
  • the vehicle cloud server 30 receives the upload data UD2 including the collected data for the job request JR2 and the state count information or the state history information or the state information, and based on the state count information or the state history information or the state information, the active vehicle At least one of the number of vehicles and the total number of active vehicles is counted. Then, the vehicle cloud server 30 transmits the upload data UD1 based on the above counting result to the service cloud server 40.
  • the function corresponding to the in-vehicle terminal 20 may be built in the vehicle V.
  • an electronic control unit (ECU: Electronic Control Unit) of the vehicle executes a program stored in the memory of the vehicle to execute a process corresponding to the control unit 24 of the vehicle-mounted terminal 20.
  • the vehicle V is an example of a “moving body”
  • the electronic control device of the vehicle V is an example of a “terminal device”.
  • the state count information of the first embodiment includes information about the number of inactive transitions. Alternatively, the state count information may not include information regarding the number of inactive transitions.
  • the in-vehicle terminal 20 counts only the number of active transitions in step S103 and step S106 of FIG. 10, includes the information of the counted number of active transitions in the upload data UD2, and transmits it to the vehicle cloud server 30.
  • the vehicle cloud server 30 calculates the number of inactive vehicles based on the transmission history information Ih in step S205 of FIG. Further, the vehicle cloud server 30 calculates the number of data collection vehicles by counting the number of the vehicle-mounted terminals 20 that are the transmission sources of the upload data UD2.
  • the state history information of the second embodiment may not include information regarding the transition to the inactive state.
  • the vehicle cloud server 30 that has received the upload data UD2 including the status history information may calculate the number of inactive vehicles based on the transmission history information Ih in step S406 of FIG.
  • the vehicle-mounted terminal 20 may generate the state count information from the state history information when transmitting the upload data UD2 and include the state count information in the upload data UD2.
  • the vehicle-mounted terminal 20 stores the state history information in the storage unit 22, as in FIG. Then, at the transmission timing of the upload data UD2, the vehicle-mounted terminal 20 refers to the state history information stored in the storage unit 22 to generate state count information, and transmits the state count information to the vehicle cloud server 30 as the upload data UD2 together with the collected data and the like. ..
  • a plurality of jobs may be included in the job requests JR1 and JR2.
  • common execution conditions may be set for a plurality of jobs, or different execution conditions may be set for each job. If different execution conditions are set for each job, the job has individual job status. For example, in the transition from the inactive state to the active state, jobs that satisfy the execution conditions individually transition to the active state.
  • the vehicle cloud server 30 generates ratio information indicating the ratio of the number of active vehicles to the number of inactive vehicles, or the ratio of the number of data collecting vehicles to the number of inactive vehicles, and the ratio.
  • the information may be included in the upload data UD1 and transmitted to the service cloud server 40.
  • the vehicle cloud server 30 can suitably transmit the information necessary for determining the validity and cost efficiency of the data collection request to the service cloud server 40.
  • the above-mentioned ratio information is an example of “moving body number information”.

Landscapes

  • Engineering & Computer Science (AREA)
  • Physics & Mathematics (AREA)
  • General Physics & Mathematics (AREA)
  • Computer Networks & Wireless Communication (AREA)
  • Signal Processing (AREA)
  • Chemical & Material Sciences (AREA)
  • Analytical Chemistry (AREA)
  • Health & Medical Sciences (AREA)
  • Computing Systems (AREA)
  • General Health & Medical Sciences (AREA)
  • Medical Informatics (AREA)
  • Traffic Control Systems (AREA)

Abstract

移動体管理装置(30)は、情報管理装置(40)が発した要求信号(JR1)を受信する第1受信部と、要求信号(JR1)に応じた指令情報(JR2)を生成する生成部と、複数の移動体(20)に対して指令情報(JR2)を送信する第1送信部と、複数の移動体(20)が正常に指令情報(JR2)を受信できたことを示す受信結果(UD2)を受信する第2受信部と、受信結果(UD2)に基づき、指令情報(JR2)を正常に受信できた移動体(20)の数を計数する第1計数部と、指令情報(JR2)に対する応答情報を受信する第3受信部と、応答情報に基づき、応答情報を送信した移動体(20)の数を計数する第2計数部と、正常に受信できた移動体(20)の数と、応答情報を送信した移動体(20)の数とに関する移動体数情報を、情報管理装置(40)に送信する第2送信部と、を備える。

Description

[規則37.2に基づきISAが決定した発明の名称] 移動体管理装置、制御方法、プログラム及び記憶媒体
 本発明は、データ収集における状態管理の技術に関する。
 従来から、車両に設置されたセンサの情報をサーバ装置において収集する技術が知られている。例えば、特許文献1には、車両等の移動体に設置されたセンサの出力に基づいて部分地図の変化点を検出した場合に、当該変化点に関する変化点情報をサーバ装置に送信する運転支援装置が開示されている。
特開2016-156973号公報
 車両に関する種々のサービスを提供する会社がそれぞれサーバを運営することで、車両に対してアップロードすべきデータを指定し、車両を管理するサーバ(車両管理サーバ)を介して、サービス提供に必要な車両に関する様々な情報を収集することが今後想定される。このようなシステムでは、車両は、指示されたデータを所定の実行条件を満たすときにアップロードすることをジョブとして認識し、当該ジョブを上述の実行条件が満たされたときに実行することが求められる。
 一方、サービス会社のサーバが生成したデータ収集依頼は、車両に配信される保証はなく、車両管理サーバが高負荷である場合や、収集条件を満たす車両がなくデータ収集依頼を配信すべき車両が存在しない場合などでは、車両に配信されない。また、車両側が高負荷となり車両からデータ収集依頼が削除された場合などでは、データ収集依頼は車両により適切に実行されない。以上を勘案した場合、データ収集依頼の有効性やコスト効率、収集データの信頼性などを的確に把握するには、各車両に実行を指示した処理の状態を適切に管理する必要がある。
 本発明は、上記のような課題を解決するためになされたものであり、移動体に実行を指示した処理の状態に関する統計データを好適に取得することが可能な移動体管理装置を提供することを主な目的とする。
 請求項に記載の発明は、移動体管理装置であって、情報管理装置が発した要求信号を受信する第1受信部と、前記要求信号に応じた指令情報を生成する生成部と、複数の移動体に対して前記指令情報を送信する第1送信部と、前記複数の移動体が正常に前記指令情報を受信できたことを示す受信結果を受信する第2受信部と、前記受信結果に基づき、前記指令情報を正常に受信できた移動体の数を計数する第1計数部と、前記指令情報に対する応答情報を受信する第3受信部と、前記応答情報に基づき、前記応答情報を送信した移動体の数を計数する第2計数部と、前記正常に受信できた移動体の数に対する前記応答情報を送信した移動体の数の割合を示す割合情報を生成する生成部と、前記割合情報を前記判定情報として情報管理装置に送信する第2送信部と、を備える。
 また、請求項に記載の発明は、移動体管理装置が実行する制御方法であって、情報管理装置が発した要求信号を受信する第1受信工程と、前記要求信号に応じた指令情報を生成する生成工程と、複数の移動体に対して前記指令情報を送信する第1送信工程と、前記複数の移動体が正常に前記指令情報を受信できたことを示す受信結果を受信する第2受信工程と、前記受信結果に基づき、前記指令情報を正常に受信できた移動体の数を計数する第1計数工程と、前記指令情報に対する応答情報を受信する第3受信工程と、前記応答情報に基づき、前記応答情報を送信した移動体の数を計数する第2計数工程と、前記正常に受信できた移動体の数に対する前記応答情報を送信した移動体の数の割合を示す割合情報を生成する生成工程と、前記割合情報を前記判定情報として情報管理装置に送信する第2送信工程と、を備える。
第1実施例に係るジョブ配信システムの概略構成を示す。 車載端末と、ビークルクラウドサーバと、サービスクラウドサーバとの間のデータの流れを概略的に示した図である。 車載端末の内部構成を示すブロック図である。 ジョブに対する車載端末の状態遷移を概略的に示した図である。 ビークルクラウドサーバ及びサービスクラウドサーバの内部構成を示すブロック図である。 ジョブリクエストのデータ構造の一例である。 送信履歴情報のデータ構造の一例である。 車載端末がジョブリクエストに基づきビークルクラウドサーバに対して送信するアップロードデータのデータ構造の一例である。 ビークルクラウドサーバがジョブリクエストに基づきサービスクラウドサーバに対して送信するアップロードデータのデータ構造の一例である。 有効な状態管理フラグが含まれるジョブリクエストを受信した場合に車載端末が実行する処理手順を示すフローチャートである。 有効な状態管理フラグを含むジョブリクエストを受信したビークルクラウドサーバが実行する処理手順を示すフローチャートを示す。 適用例におけるジョブ配信システムの構成例を示す。 A駅の駅前通りを示した俯瞰図である。 第2実施例に係る車載端末の内部構成を示すブロック図である。 第2実施例に係るアップロードデータのデータ構造の一例である。 有効な状態管理フラグが含まれるジョブリクエストを受信した場合に第2実施例に係る車載端末が実行する処理手順を示すフローチャートである。 有効な状態管理フラグを含むジョブリクエストを受信した第2実施例に係るビークルクラウドサーバが実行する処理手順を示すフローチャートを示す。 第3実施例に係るアップロードデータのデータ構造の一例である。 第3実施例に係るビークルクラウドサーバの内部構成を概略的に示した図である。 有効な状態管理フラグを含むジョブリクエストを受信した第3実施例に係る車載端末が実行する処理手順を示すフローチャートである。 有効な状態管理フラグを含むジョブリクエストを受信した第3実施例に係るビークルクラウドサーバが実行する処理手順を示すフローチャートを示す。
 1つの好適な実施形態は、移動体管理装置であって、情報管理装置が発した要求信号を受信する第1受信部と、前記要求信号に応じた指令情報を生成する生成部と、複数の移動体に対して前記指令情報を送信する第1送信部と、前記複数の移動体が正常に前記指令情報を受信できたことを示す受信結果を受信する第2受信部と、前記受信結果に基づき、前記指令情報を正常に受信できた移動体の数を計数する第1計数部と、前記指令情報に対する応答情報を受信する第3受信部と、前記応答情報に基づき、前記応答情報を送信した移動体の数を計数する第2計数部と、前記正常に受信できた移動体の数と、前記応答情報を送信した移動体の数とに関する移動体数情報を、前記情報管理装置に送信する第2送信部と、を備える。「移動体の数」は、延べ数であってもよい。この態様により、移動体管理装置は、要求信号に基づく指令情報を正常に受信した移動体の数と、指令情報に対する応答情報を送信した移動体の数とに関する移動体数情報を、情報管理装置に好適に供給することができる。
 上記移動体管理装置の一態様では、前記指令情報は、前記移動体が前記指令情報の示す指令を実行する条件を示す条件情報を含み、前記応答情報は、前記条件が満たされたか否かに応じて前記指令情報が取り得る状態に関する情報を含む。この態様により、移動体管理装置は、条件情報が示す条件が満たされたか否かに応じて指令情報が取り得る状態に関する情報を、移動体ごとに取得することができるため、上述した移動体の数を的確に計数することができる。
 上記移動体管理装置の他の一態様では、前記第1送信部は、前記指令情報と、前記前記指令情報が取り得る状態に関する情報の送信を指示するフラグ情報と、を前記複数の移動体に送信する。この態様により、移動体管理装置は、指令情報が取り得る状態に関する情報を、移動体から好適に収集することができる。
 上記移動体管理装置の他の一態様では、前記指令情報が取り得る状態は、前記条件が満たされた場合に前記指令が実行される状態である実行状態と前記条件が満たされない場合に前記指令が実行されない状態である非実行状態と、含み、前記第2送信部は、前記移動体数情報として、前記正常に受信できた移動体の数に対する前記指令情報が前記実行状態報となった移動体の数の割合を示す情報を前記情報管理装置に送信する。この態様により、要求信号の有効性やコスト効率の判定に必要な情報を好適に情報管理装置に供給することができる。
 上記移動体管理装置の他の一態様では、前記移動体管理装置は、前記第1送信部が前記指令情報を送信した移動体の識別情報と、当該指令情報が示す指令の識別情報と、を関連付けて記憶する記憶部を更に備える。この態様により、移動体管理装置は、送信した指令情報ごとに、指令情報の送信先となる移動体の数を好適に保持することができる。
 上記移動体管理装置の他の一態様では、前記受信結果は、前記指令情報が正常に受け付けられなかったことを示すフェール情報を含む。この態様により、移動体管理装置は、指令情報を正常に受け付けた移動体の数を的確に計数することができる。
 さらに別の好適な実施形態では、移動体管理装置が実行する制御方法であって、情報管理装置が発した要求信号を受信する第1受信工程と、前記要求信号に応じた指令情報を生成する生成工程と、複数の移動体に対して前記指令情報を送信する第1送信工程と、前記複数の移動体が正常に前記指令情報を受信できたことを示す受信結果を受信する第2受信工程と、前記受信結果に基づき、前記指令情報を正常に受信できた移動体の数を計数する第1計数工程と、前記指令情報に対する応答情報を受信する第3受信工程と、前記応答情報に基づき、前記応答情報を送信した移動体の数を計数する第2計数工程と、前記正常に受信できた移動体の数と、前記応答情報を送信した移動体の数とに関する移動体数情報を、前記情報管理装置に送信する第2送信工程と、を有する。移動体管理装置は、この制御方法を実行することで、要求信号に基づく指令情報を正常に受信した移動体の数と、指令情報に対する応答情報を送信した移動体の数とに関する移動体数情報を、情報管理装置に好適に供給することができる。
 さらに別の好適な実施形態は、上記記載の制御方法を、コンピュータにより実行させるプログラムである。コンピュータは、このプログラムを実行することで、処理情報を送信した端末装置の数を、処理情報が示す処理の内容ごとに、好適に把握することができる。好適には、上記プログラムは、記憶媒体に記憶される。
 以下、図面を参照して本発明の好適な第1~第3実施例について説明する。
 <第1実施例>
 (1)全体構成
 図1は、第1実施例に係るジョブ配信システムの概略構成を示す。ジョブ配信システムは、車両のセンサが生成した種々の情報を収集するためのシステムであり、車両Vと、ビークル(VEHICLE)クラウドサーバ30と、サービスクラウドサーバ40とを備える。
 車両Vには、車載端末20が搭載されている。車載端末20は、車両Vの状態又は周辺環境に関する情報を取得するための種々のセンサと接続し、所定の処理を行う情報処理装置である。車載端末20は、これらのセンサの出力に基づき、サービスクラウドサーバ40から依頼された処理(単に「ジョブ」とも呼ぶ。)を実行する。本実施例では、ジョブは、主に、サービスクラウドサーバ40から指定された特定の車両Vの状態又は周辺環境に関する情報をセンサにより取得してサービスクラウドサーバ40にアップロードする処理を指す。車両V及び車載端末20は、「移動体」の一例である。また、車載端末20は、「端末装置」の一例である。尚、「移動体」は車両V及び車載端末20に限られず、自転車、車椅子、ドローン、船舶等の移動体であってもよい。
 ビークルクラウドサーバ30は、ビークルクラウドを構成するサーバ装置である。ビークルクラウドとは、例えば、ユーザに提供された車両(例えば自動運転車)を管理し、車両から各種の情報を収集する情報収集会社が運営するクラウドである。情報収集会社は、自動車メーカー自身がその役割を担ってもよく、また、自動車メーカーによって直接、または間接的に運営されてもよい。例えば、自動車メーカーとしてA社、B社、C社の3社が存在する場合、A社が運営する情報収集会社、B社が運営する情報収集会社、C社が運営する情報収集会社が個別に存在し、各情報収集会社は運営する自動車メーカーが製造した車両から各種の情報を収集する。あるいは、D社、E社、F社などの複数の自動車メーカーが共同で委託/運営する形態でもよい。ビークルクラウドサーバ30は、「移動体管理装置」の一例である。
 サービスクラウドサーバ40は、サービスクラウドを構成するサーバ装置である。サービスクラウドとは、例えば、車両に関するサービスを提供するサービス提供会社が運営するクラウドである。サービス提供会社としては、保険に関するサービスを提供する保険会社、地図に関するサービスを提供する地図サービス会社、駐車場に関するサービスを提供する駐車場サービス会社、経路探索に関するサービスを提供する経路探索サービス会社などが挙げられる。サービスクラウドサーバ40は、目的に応じて、車載端末20に実行させるジョブを指示する情報(「ジョブリクエスト」とも呼ぶ。)を生成し、ビークルクラウドサーバ30を介して車載端末20に配信する。サービスクラウドサーバ40は、「情報管理装置」の一例である。
 車両Vに搭載されている車載端末20と、ビークルクラウドサーバ30と、サービスクラウドサーバ40とは、ネットワーク5を通じて有線又は無線により通信が可能である。本実施例では、車載端末20と、ビークルクラウドサーバ30と、サービスクラウドサーバ40とは、サービスクラウドサーバ40が生成したジョブリクエストの授受、及び、ジョブリクエストに応じて車載端末20が生成したデータ(「アップロードデータ」とも呼ぶ。)の授受を行う。
 なお、図1に示すジョブ配信システムの構成は一例であり、本発明が適用可能な構成はこれに限定されない。例えば、サービスクラウドとして、ジョブリクエストを生成するサービスクラウド(第1サービスクラウド)と、第1サービスクラウドに所定の情報の収集を依頼するサービスクラウド(第2サービスクラウド)とが存在してもよい。この場合、例えば、第1サービスクラウドは、第2サービスクラウドの依頼内容に応じてジョブリクエストを生成し、かつ、ジョブリクエストの送信先のビークルクラウドから受信したアップロードデータに基づいて、第2サービスクラウドが求める情報を第2サービスクラウドに送信する。
 図2は、車載端末20と、ビークルクラウドサーバ30と、サービスクラウドサーバ40との間のデータの流れを概略的に示した図である。
 図2に示すように、サービスクラウドサーバ40は、生成したジョブリクエスト「JR1」をビークルクラウドサーバ30に送信し、ビークルクラウドサーバ30は、サービスクラウドサーバ40から受信したジョブリクエストJR1に基づき生成したジョブリクエスト「JR2」を、車載端末20に送信する。なお、ジョブリクエストJR1には、ジョブを実行すべき車両を示す車両IDやドライバIDなどを含めることが可能となっており、サービスクラウドサーバ40は、必要に応じて、送信対象とする車両IDやドライバIDをジョブリクエストJR1に含める。これにより、ビークルクラウドサーバ30は、対応する車両の車載端末20に対してジョブリクエストJR2を送信する。
 ジョブリクエストJR2を受信した車載端末20は、ジョブリクエストJR2において指定されたデータをセンサより収集し、収集したデータをアップロードデータ「UD2」としてビークルクラウドサーバ30に送信する。ビークルクラウドサーバ30は、車載端末20からアップロードデータUD2を受信した場合、受信したアップロードデータUD2に基づきアップロードデータ「UD1」を生成し、生成したアップロードデータUD1を依頼元のサービスクラウドサーバ40へ送信する。ジョブリクエストJR1、JR2及びアップロードデータUD1、UD2のデータ構造については、「(5)データ構造」のセクションにて詳しく説明する。サービスクラウドサーバ40がビークルクラウドサーバ30へ送信するジョブリクエストJR1は、「要求信号」の一例であり、ビークルクラウドサーバ30から車載端末20に送信するジョブリクエストJR2は、「送信情報」の一例であり、アップロードデータUD2は、「受信結果」の一例である。
 (2)車載端末の構成
 図3は、車載端末20の内部構成を示すブロック図である。図示のように、車載端末20は、主に、通信部21と、記憶部22と、入力部23と、制御部24と、インターフェース25と、出力部26とを有する。車載端末20内の各要素は、バスライン29を介して相互に接続されている。また、インターフェース25は、センサ部27と接続されている。
 通信部21は、制御部24の制御に基づき、アップロードデータをビークルクラウドサーバ30へ送信したり、地図DBを更新するための地図データをビークルクラウドサーバ30から受信したりする。また、通信部21は、車両を制御するための信号を車両に送信する処理、車両の状態に関する信号を車両から受信する処理を行ってもよい。
 記憶部22は、制御部24が実行するプログラムや、制御部24が所定の処理を実行する為に必要な情報を記憶する。記憶部22は、不揮発性メモリ(内部ストレージ)を含んでいる。本実施例では、記憶部22は、地図DBと、センサデータキャッシュと、車両属性情報と、通信部21によりビークルクラウドサーバ30から受信したジョブリクエストJR2と、状態カウント情報と、を記憶する。
 地図DBは、例えば、道路データ、施設データ、及び、道路周辺の地物データなどを含むデータベースである。道路データには、経路探索用の車道/車線ネットワークデータ、道路形状データ、交通法規データなどが含まれる。地物データは、道路標識等の看板や停止線等の道路標示、センターライン等の道路区画線や道路沿いの構造物等の情報を含む。また、地物データは、自車位置推定に用いるための地物の高精度な点群情報などを含んでもよい。その他、地図DBには、位置推定に必要な種々のデータが記憶されてもよい。
 センサデータキャッシュは、センサ部27の出力データを一時的に保持するキャッシュメモリである。車両属性情報は、車両の種別、車両ID、車両長さ、車幅、車高などの車両サイズ、車両の燃料タイプなど、車載端末20を搭載した車両Vの属性に関する情報を示す。
 状態カウント情報は、ジョブリクエストJR2により依頼されたジョブが有効な期間における当該ジョブの状態ごとの累積の遷移回数を示す情報である。状態カウント情報は、例えば、ジョブが取り得る状態ごとに、当該状態への遷移回数が関連付けられた情報である。制御部24は、上述の状態の遷移を検知する毎に、状態カウント情報を更新する。ジョブの状態遷移については、図4を用いて後述する。状態カウント情報は、「計数情報」の一例である。
 入力部23は、ユーザが操作するためのボタン、タッチパネル、リモートコントローラ、音声入力装置等であり、例えば、経路探索のための目的地を指定する入力、自動運転のオン及びオフを指定する入力などを受け付け、生成した入力信号を制御部24へ供給する。出力部26は、例えば、制御部24の制御に基づき出力を行うディスプレイやスピーカ等である。
 インターフェース25は、センサ部27の出力データを制御部24やセンサデータキャッシュに供給するためのインターフェース動作を行う。センサ部27は、ライダやカメラなどの車両の周辺環境を認識するための複数の外界センサと、GPS受信機、ジャイロセンサ、ポジションセンサ、3軸センサなどの内界センサを含む。ライダは、外界に存在する物体までの距離を離散的に測定し、当該物体の表面を3次元の点群として認識し、点群データを生成する。カメラは、車両から撮影した画像データを生成する。ポジションセンサは、各外界センサの位置を検出するために設けられ、3軸センサは、各外界センサの姿勢を検出するために設けられている。なお、センサ部27は、図3に示した外界センサ及び内界センサ以外の任意の外界センサ及び内界センサを有してもよい。例えば、センサ部27は、外界センサとして、超音波センサ、赤外線センサ、マイクなどを含んでもよい。
 制御部24は、1または複数のプラットフォーム上で所定のプログラムを実行するCPUなどを含み、車載端末20の全体を制御する。制御部24は、機能的には、位置推定部と、オブジェクト検出部と、アップロードデータ生成部とを含む。制御部24は、プログラムを実行するコンピュータとして機能する。制御部24は、「生成部」及びプログラムを実行するコンピュータの一例であり、通信部21及び制御部24は、「受信部」及び「送信部」の一例である。
 位置推定部は、センサデータキャッシュに保持されているセンサ部27の出力データ及び地図DBに基づき、自車位置(車両の姿勢も含む)を推定する。位置推定部は、種々の位置推定方法を実行可能となっている。位置推定部は、例えば、GPS受信機及びジャイロセンサ等の自立測位センサの出力に基づくデッドレコニング(自律航法)による自車位置推定方法、自律航法に地図DBの道路データなどをさらに照合する処理(マップマッチング)を行う自車位置推定方法、周囲に存在する所定のオブジェクト(ランドマーク)を基準としてライダやカメラなどの外界センサの出力データと地図DBの地物情報が示すランドマークの位置情報とに基づく自車位置推定方法などを実行する。そして、位置推定部は、現在実行可能な位置推定方法の中から最も高い推定精度となる位置推定方法を実行し、実行した位置推定方法に基づき得られた自車位置等を示した自車位置情報を、アップロードデータ生成部へ供給する。
 オブジェクト検出部は、センサ部27が出力する点群情報、画像データ、音声データ等に基づき、所定のオブジェクトを検出する。この場合、例えば、オブジェクト検出部は、位置推定部が推定した自車位置に基づき、センサ部27により検出したオブジェクトに対応する地物データを地図DBから抽出する。そして、オブジェクト検出部は、例えば、センサ部27により検出したオブジェクトの位置及び形状等と、地図DBから抽出した地物データが示すオブジェクトの位置及び形状等とに違いがある場合、又は、地図DBに該当する地物データが存在しない場合などに、センサ部27により検出したオブジェクトに関する情報を、アップロードデータ生成部へ供給する。
 アップロードデータ生成部は、位置推定部から供給される自車位置情報、オブジェクト検出部から供給されるオブジェクトデータ、及びセンサデータキャッシュから供給されるセンサ部27の出力データなどに基づき、アップロードデータUD2を生成する。本実施例では、アップロードデータ生成部は、記憶部22に記憶されたジョブリクエストJR2が指定する条件を満たすときに同データが指定するデータをアップロードデータUD2に含め、通信部21によりビークルクラウドサーバ30へアップロードデータUD2を送信する。
 ここで、ジョブリクエストJR2が示すジョブの状態(単に「ジョブ状態」とも呼ぶ。)の遷移について説明する。
 図4は、ジョブ状態の遷移を概略的に示した図である。図4には、ジョブリクエストJR2が示すジョブの実行条件を満たさないジョブ状態であるインアクティブ状態(非実行状態)と、ジョブの実行条件を満たすジョブ状態であるアクティブ状態(実行状態)と、例外的な場合に遷移するフェール(Failed)とが記されている。
 ここで、車載端末20は、ジョブリクエストJR2を受信した場合には、所定の認証処理を行い、ジョブリクエストJR2を受け付けることが適切であるか否かを判定する。例えば、車載端末20は、認証処理として、ジョブリクエストJR2において指定された車両ID又は/及びドライバIDが車両Vの車両ID又は/及び車両VのドライバのドライバIDとが一致するか否か判定する。
 そして、認証処理が成功した場合には、ジョブはインアクティブ状態に自動的に遷移する。その後、ジョブリクエストJR2が示すジョブの実行条件を満たすと判断した場合には、当該ジョブはアクティブ状態に遷移し、アクティブ状態に遷移後に上述の実行条件を満たさないと判断した場合には、当該ジョブはインアクティブ状態に遷移する。
 一方、認証処理が失敗した場合には、ジョブはフェールに移行する。そして、車載端末20は、この場合、フェールとなった旨のアップロードデータUD2をビークルクラウドサーバ30へ送信する。なお、所定の例外が発生した場合には、ジョブをアクティブ状態又はインアクティブ状態からフェールに移行してもよい。そして、車載端末20は、ジョブの有効期限等が終了した場合又はフェールになった場合などにジョブを終了し、ジョブリクエストJR2を記憶部22から削除する。フェールとなった旨のアップロードデータUD2は、「フェール情報」の一例である。
 (3)ビークルクラウドサーバの構成
 次に、ビークルクラウドサーバ30について詳しく説明する。図5(A)はビークルクラウドサーバ30の内部構成を示すブロック図である。図示のように、ビークルクラウドサーバ30は、通信部31と、記憶部32と、制御部33とを備える。ビークルクラウドサーバ30内の各要素は、バスライン39を介して相互に接続されている。
 通信部31は、制御部33の制御に基づき、車両Vの車載端末20及びサービスクラウドサーバ40と通信する。具体的には、通信部31は、サービスクラウドサーバ40からジョブリクエストJR1を受信したり、当該ジョブリクエストJR1に基づき生成されたジョブリクエストJR2を車載端末20へ送信したりする。また、通信部31は、車載端末20からアップロードデータUD2を受信したり、当該アップロードデータUD2に基づき生成したアップロードデータUD1をサービスクラウドサーバ40へ送信したりする。
 記憶部32は、ROM、RAMなどを含み、ビークルクラウドサーバ30が実行する各種の処理のためのプログラムが記憶されている。また、記憶部32は、各種の処理が実行される際の作業メモリとしても使用される。また、記憶部32は、車両情報と、送信履歴情報Ihとを記憶している。車両情報は、ビークルクラウドが管理する車両に関する情報である。車両情報は、例えば、車両ごとに、車両ID又は/及びドライバIDと、対応する車両の車載端末20へデータを送信するための通信アドレス情報と、車両が利用しているサービスに関する情報とを対応付けたテーブル情報である。送信履歴情報Ihは、ジョブリクエストJR2を各車両の車載端末20に送信した履歴を示すテーブルであり、詳細なデータ構造については後述する。
 また、記憶部32は、ビークルクラウドサーバ30がサービスクラウドサーバ40から受信したジョブリクエストJR1、及び、ビークルクラウドサーバ30が車載端末20から取得したアップロードデータUD2の履歴データをさらに記憶してもよい。この場合、例えば、記憶部32には、各車載端末20から受信したアップロードデータUD2が、車載端末20を搭載している車両Vの車両IDや受信時刻などと関連付けて記憶される。同様に、記憶部32には、サービスクラウドサーバ40から受信したジョブリクエストJR1が、送信元のサービスクラウドサーバ40を特定する情報及び受信時刻などと関連付けて記憶されてもよい。
 制御部33は、CPUなどのコンピュータにより構成され、ビークルクラウドサーバ30の全体を制御する。具体的には、制御部33は、記憶部32に記憶された各種のプログラムを実行することにより、各種の処理を行う。制御部33は、「生成部」、「計数部」、「第1計数部」、「第2計数部」の一例である。また、通信部31及び制御部33は、「第1受信部」、「第1送信部」、「第2受信部」、「第3受信部」、「第2送信部」の一例である。
 (4)サービスクラウドサーバの構成
 次に、サービスクラウドサーバ40について詳しく説明する。図5(B)はサービスクラウドサーバ40の内部構成を示すブロック図である。図示のように、サービスクラウドサーバ40は、通信部41と、記憶部42と、制御部43とを備える。サービスクラウドサーバ40内の各要素は、バスライン49を介して相互に接続されている。
 通信部41は、制御部43の制御に基づき、ビークルクラウドサーバ30と通信する。具体的には、通信部41は、後述する提供情報に該当する情報をビークルクラウドサーバ30から受信する。
 記憶部42は、不揮発性メモリであるROM及び揮発性メモリであるRAMなどを含み、サービスクラウドサーバ40が実行する各種の処理のためのプログラムが記憶されている。また、記憶部42は、各種の処理が実行される際の作業メモリとしても使用される。また、記憶部42は、サービスクラウドサーバ40がビークルクラウドサーバ30に対して送信したジョブリクエストJR1、及び、サービスクラウドサーバ40がビークルクラウドサーバ30から取得したアップロードデータUD1の履歴を記憶してもよい。この場合、例えば、ジョブリクエストJR1及びアップロードデータUD1は、送信先又は送信元のビークルクラウドサーバ30を特定する情報及び送受信時刻などと関連付けられて記憶部42に記憶される。
 制御部43は、CPUなどのコンピュータにより構成され、サービスクラウドサーバ40の全体を制御する。具体的には、制御部43は、記憶部42に記憶された各種のプログラムを実行することにより、各種の処理を行う。
 (5)データ構造
 次に、各種データのデータ構造について説明する。以後では、ジョブリクエストJR1とジョブリクエストJR2とを区別しない場合には、単に「ジョブリクエスト」と表記し、アップロードデータUD1とアップロードデータUD2とを区別しない場合には、単に「アップロードデータ」と表記する。
 (5-1)ジョブリクエスト
 図6は、ジョブリクエストのデータ構造の一例である。図示のように、ジョブリクエストは、「バージョン情報」と、「リクエスト識別情報」と、「属性情報」と、「データ収集条件情報」と、「状態管理フラグ」と、「収集データ指定情報」とを含む。
 「バージョン情報」は、ジョブリクエストを規定した仕様のバージョン等を識別する情報である。「属性情報」は、対象のジョブリクエストの取り扱いを規定した情報である。
 「リクエスト識別情報」は、サービスクラウドサーバ40が生成するジョブリクエストJR1に固有の識別情報である。サービスクラウドサーバ40は、ジョブリクエストJR1を生成する度に、ユニークなリクエスト識別情報を生成してジョブリクエストJR1に含める。なお、ジョブリクエストJR2の「リクエスト識別情報」は、ジョブリクエストJR1の「リクエスト識別情報」と同一であってもよく、異なっていてもよい。後者の場合、ビークルクラウドサーバ30は、車載端末20に送信するジョブリクエストJR2ごとに固有の識別情報をジョブリクエストJR2の「リクエスト識別情報」として設定する。この場合、例えば、ビークルクラウドサーバ30は、ジョブリクエストJR1の「リクエスト識別情報」と当該ジョブリクエストJR1に基づき生成したジョブリクエストJR2の「リクエスト識別情報」とを対応付けるテーブル等を記憶しておく。本実施例において、ジョブリクエストJR1の「リクエスト識別情報」は、ジョブを識別する情報(ジョブID)として用いられる。
 「データ収集条件情報」は、データを収集する条件を示す情報である。例えば、「データ収集条件情報」は、車載端末20がアップロードデータUD2を生成する地理的条件、アップロードデータUD2を生成する時間的条件、イベント、車両Vの車両ID、又は/及び車両Vの運転者のドライバIDを示す情報である。ここで、上述のアップロードデータUD2を生成する地理的条件とは、例えば、アップロードデータUD2を生成する道路又はエリアを指定する条件であり、アップロードデータUD2を生成する時間的条件とは、例えば、アップロードデータUD2を生成する時間帯やインターバルなど、時間的な制約を指定する条件である。また、イベントとは、アップロードデータUD2を生成する契機となるイベント等を示し、例えば、所定度合以上の衝撃(即ち事故)の発生や急ブレーキの発生などが上述のイベントとして指定される。データ収集条件情報は、「条件情報」の一例である。
 「収集データ指定情報」は、データ収集条件情報が示すジョブの実行条件を満たす場合にアップロードデータとして含めるべき収集データを指定する情報である。収集データ指定情報は、例えば、車両の加減速に関する情報、車速に関する情報、車両の走行軌跡(即ち時系列での自車位置・姿勢)の情報、出発地及び目的地の情報、事故発生前後所定時間におけるカメラの撮影情報などである。データ収集条件情報及び収集データ指定情報として指定される内容は、ジョブリクエストを生成するサービスクラウドサーバ40が運営するサービス会社によって夫々任意に設定される。データ収集条件情報及び収集データ指定情報は、「指令情報」の一例である。
 「状態管理フラグ」は、状態カウント情報のアップロードの要否を指定するフラグ(「状態管理フラグFs」とも呼ぶ。)である。例えば、状態管理フラグFsは、無効であることを示す「0」または有効であることを示す「1」のいずれかの値となり、1(有効)である場合には、状態カウント情報のアップロードが必要であることを示し、0(無効)である場合には、状態カウント情報のアップロードが不要であることを示す。状態管理フラグFsは、フラグ情報の一例である。なお、状態管理フラグFsは、ジョブリクエスト内の単独のフィールドに設けられる代わりに、データ収集条件情報、属性情報又は収集データ指定情報のいずれかのフィールドに含まれてもよい。
 ここで、サービスクラウドサーバ40からビークルクラウドサーバ30に送信されるジョブリクエストJR1に、有効な状態管理フラグFsが含まれる場合には、ビークルクラウドサーバ30は、ジョブリクエストJR1が示すジョブに対し、ジョブ状態に関する車両数の集計を行う。そして、ビークルクラウドサーバ30は、その集計結果をアップロードデータUD1としてサービスクラウドサーバ40に送信する。上述の集計結果を含むアップロードデータUD1のデータ構造については、図9を参照して後述する。
 また、ビークルクラウドサーバ30から各車載端末20に送信されるジョブリクエストJR2に、有効な状態管理フラグFsが含まれる場合には、車載端末20は、ビークルクラウドサーバ30が上述のジョブ状態に関する車両数の集計に必要な情報を生成する。そして、車載端末20は、生成した情報をアップロードデータUD2に含めてビークルクラウドサーバ30に送信する。車載端末20が送信するアップロードデータUD2のデータ構造については、図8を参照して後述する。
 なお、ジョブリクエストは、図6に示した情報以外の任意の情報を含んでもよい。例えば、ジョブリクエストには、ジョブリクエストの生成元であるサービスクラウドサーバ40又はビークルクラウドサーバ30へアップロードデータを送信するための送信先を指定したアドレス情報などが含まれてもよい。他の例では、ジョブリクエストには、リクエスト識別情報とは別に、ジョブを識別するためのジョブIDが含まれてもよい。例えば、サービスクラウドサーバ40が同一内容のジョブを示すジョブリクエストJR1を複数のビークルクラウドサーバ30に送信する場合には、各ジョブリクエストJR1には、ジョブリクエストJR1ごとに異なるリクエスト識別情報と、全てのジョブリクエストJR1で共通のジョブIDとが含まれてもよい。
 (5-2)送信履歴情報
 図7は、送信履歴情報Ihのデータ構造の一例である。送信履歴情報Ihは、ジョブリクエストJR2の送信履歴に相当し、図7の例では、「車両ID」と、「ジョブID」とを少なくとも含んでいる。
 「車両ID」は、送信履歴情報Ihを保持するビークルクラウドサーバ30がジョブリクエストJR2を送信した送信先の車載端末20に対応する車両IDである。「ジョブID」は、車載端末20へ送信したジョブリクエストJR2により依頼したジョブの識別情報である。例えば、ビークルクラウドサーバ30は、送信履歴情報Ihの「ジョブID」として、ジョブリクエストJR2の生成に用いたジョブリクエストJR1のリクエスト識別情報を記録してもよい。
 ビークルクラウドサーバ30は、ジョブリクエストJR2を車載端末20に送信するごとに、自身が保持する送信履歴情報Ihに、車両ID及びジョブIDを関連付けたレコードを追加する。なお、送信履歴情報Ihには、車両ID及びジョブID以外の任意の項目を含んでもよい。例えば、送信履歴情報Ihには、車載端末20へ送信したジョブリクエストJR2を生成するのに用いたジョブリクエストJR1の生成元のサービスクラウドの識別情報がさらに含まれてもよい。この識別情報は、サービスクラウドを識別するための任意の情報(例えば通信アドレス等)であってもよい。
 また、ビークルクラウドサーバ30は、ジョブリクエストJR2を正常に受け付けることができなかったこと(即ちフェールとなったこと)を示すアップロードデータUD2を車載端末20から受信した場合には、対応するレコードを送信履歴情報Ihから削除する。即ち、ビークルクラウドサーバ30は、この場合、アップロードデータUD2の送信元の車載端末20に対応する車両IDと、フェールとなったジョブを示すジョブIDと含むレコードを、送信履歴情報Ihから削除する。これにより、送信履歴情報Ihには、ジョブリクエストJR2が正常に受け取った車載端末20の車両IDとジョブリクエストJR2により指示されたジョブに対応するジョブIDとの組み合わせを示すレコードのみが記録されることになる。
 ここで、図7に示す送信履歴情報Ihの用途について説明する。ビークルクラウドサーバ30は、送信履歴情報Ihを参照することで、インアクティブになった車両数(「インアクティブ車両数」とも呼ぶ。)を好適に算出することが可能である。
 具体的には、ビークルクラウドサーバ30は、受信したジョブリクエストJR1に対応するジョブIDが記録された送信履歴情報Ihのレコード数を、ジョブリクエストJR2を送信した車両数として計算する。ここで、図4に示したように、ジョブ状態は、認証処理が成功した場合には自動的にインアクティブ状態となるため、車載端末20において認証処理が成功したジョブリクエストJR2が示すジョブは、必ずインアクティブ状態となる。なお、認証処理が失敗してフェールとなった場合には、フェールとなった旨を示すアップロードデータUD2がビークルクラウドサーバ30に送信され、ビークルクラウドサーバ30によって対応するレコードが送信履歴情報Ihから削除される。よって、ビークルクラウドサーバ30は、送信履歴情報Ihを参照し、ジョブごとにジョブリクエストJR2を送信した車両数をカウントすることで、当該ジョブが認証されて受け入れられた車両の数(インアクティブ車両数)をジョブごとに好適に特定することができる。なお、後述するように、特定したインアクティブ車両数の情報は、アップロードデータUD1に含めてサービスクラウドサーバ40に送信される。
 (5-3)アップロードデータ
 次に、アップロードデータUD1、UD2のそれぞれのデータ構造について具体的に説明する。
 図8は、車載端末20がジョブリクエストJR2に基づきビークルクラウドサーバ30に対して送信するアップロードデータUD2のデータ構造の一例である。図示のように、アップロードデータUD2は、「バージョン情報」と、「リクエスト識別情報」と、「収集データ」と、「状態カウント情報」とを含む。
 「バージョン情報」は、アップロードデータUD2を規定した仕様のバージョン等を識別する情報である。この「バージョン情報」には、例えば、先に受信したジョブリクエストJR2に含まれる「バージョン情報」と同一内容が指定される。「リクエスト識別情報」は、先に受信したジョブリクエストJR2のリクエスト識別情報を示す。
 「収集データ」は、先に受信したジョブリクエストJR2に基づき車載端末20が収集したデータであり、依頼されたジョブの実行結果に相当する。この収集データは、先に受信したジョブリクエストJR2の「収集データ指定情報」により指定されたデータである。収集データは、「応答情報」の一例である。
 「状態カウント情報」は、先に受信したジョブリクエストJR2に基づき車載端末20が記憶部22に記憶した状態カウント情報であり、「アクティブ遷移回数」と、「インアクティブ遷移回数」とを含む。「アクティブ遷移回数」は、先に受信したジョブリクエストJR2により依頼されたジョブの有効期間においてジョブがアクティブ状態へ遷移した回数(即ちアクティブ状態になった回数)を示す。「インアクティブ遷移回数」は、先に受信したジョブリクエストJR2により依頼されたジョブの有効期間においてジョブがインアクティブ状態へ遷移した回数(即ちインアクティブ状態になった回数)を示す。状態カウント情報は、「回数情報」の一例である。
 ここで、状態カウント情報の生成方法について補足説明する。
 車載端末20は、先に受信したジョブリクエストJR2に有効な状態管理フラグFsが含まれる場合に、対象のジョブに対するアクティブ状態及びインアクティブ状態の各遷移回数のカウントを開始し、これらの遷移回数の情報を状態カウント情報として記憶部22に記憶する。そして、車載端末20は、状態カウント情報を、対象のジョブに対するジョブ状態の変更がある度に更新する。そして、車載端末20は、アップロードデータUD2の生成時に、記憶部22に記憶した状態カウント情報をアップロードデータUD2に含める。
 図9は、ビークルクラウドサーバ30がジョブリクエストJR1に基づきサービスクラウドサーバ40に対して送信するアップロードデータUD1のデータ構造の一例である。図示のように、アップロードデータUD2は、「バージョン情報」と、「リクエスト識別情報」と、「収集データ」と、「インアクティブ車両数」と、「アクティブ車両数」と、「アクティブ延べ車両数」と、「データ収集車両数」とを含む。
 「バージョン情報」は、アップロードデータUD1を規定した仕様のバージョン等を識別する情報である。この「バージョン情報」には、例えば、先に受信したジョブリクエストJR1に含まれる「バージョン情報」と同一内容が指定される。「リクエスト識別情報」は、先に受信したジョブリクエストJR1のリクエスト識別情報を示す。
 「収集データ」は、ジョブリクエストJR1により依頼されたジョブの実行結果に相当し、ジョブリクエストJR1の「収集データ指定情報」により指定されたデータである。ビークルクラウドサーバ30は、ジョブリクエストJR1に基づき生成したジョブリクエストJR2を複数の車載端末20へ送信し、その応答であるアップロードデータUD2を各車載端末20から受信することで、「収集データ」としてアップロードデータUD1に含めるデータを収集する。この場合、ビークルクラウドサーバ30は、各車載端末20から受信したアップロードデータUD2に含まれる収集データをそのまま抽出したデータを「収集データ」としてアップロードデータUD1に含めてもよく、各アップロードデータUD2に含まれる収集データに対して所定の統計処理を行うことで算出した統計データを「収集データ」としてアップロードデータUD1に含めてもよい。
 「インアクティブ車両数」は、ジョブリクエストJR1により依頼されたジョブの状態がインアクティブ状態となった車両数である。本実施例では、第1の例では、ビークルクラウドサーバ30は、送信履歴情報Ihを参照することで、ジョブリクエストJR1により依頼されたジョブに対するインアクティブ車両数を算出する。具体的には、ビークルクラウドサーバ30は、送信履歴情報Ihに記録されたレコードのうち、ジョブリクエストJR1により依頼されたジョブの識別情報(例えばリクエスト識別情報)が「ジョブID」として記録されたレコードの数を、インアクティブ車両数として算出する。上述したように、ジョブリクエストJR2を受信した車載端末20において、ジョブリクエストJR2の認証が成功した場合、ジョブリクエストJR2により依頼されたジョブの状態は必ずインアクティブ状態となり、かつ、ジョブリクエストJR2の認証が失敗した場合には、当該ジョブリクエストJR2の送信履歴に相当する送信履歴情報Ihのレコードはビークルクラウドサーバ30により削除される。よって、ビークルクラウドサーバ30は、送信履歴情報Ihを参照することで、ジョブリクエストJR1により依頼されたジョブに対するインアクティブ車両数を好適に算出することができる。第2の例では、ビークルクラウドサーバ30は、アップロードデータUD2に含まれる状態カウント情報に基づき算出する。この場合、ビークルクラウドサーバ30は、上述の状態カウント情報が示すインアクティブ遷移回数が1回以上となるアップロードデータUD2の送信元の車載端末20の数を、当該ジョブに対するインアクティブ車両数として算出する。
 「アクティブ車両数」は、ジョブリクエストJR1により依頼されたジョブの状態がアクティブ状態となった車両数である。本実施例では、ビークルクラウドサーバ30は、ジョブリクエストJR1に基づき生成したジョブリクエストJR2の応答として各車載端末20から受信したアップロードデータUD2の状態カウント情報が示すアクティブ遷移回数を参照することで、ジョブリクエストJR1により依頼されたジョブに対するアクティブ車両数を算出する。具体的には、ビークルクラウドサーバ30は、当該ジョブのアクティブ遷移回数が1回以上となるアップロードデータUD2を送信した車載端末20の数を、当該ジョブのアクティブ車両数として算出する。このように、ビークルクラウドサーバ30は、ジョブリクエストJR2の送信先となる車載端末20から受信したアップロードデータUD2に含まれる状態カウント情報が示すアクティブ遷移回数を参照することで、ジョブリクエストJR2により依頼されたジョブに対するアクティブ車両数を好適に算出することができる。
 「アクティブ延べ車両数」は、ジョブリクエストJR1により依頼されたジョブの状態がアクティブ状態となった延べ車両数である。本実施例では、ビークルクラウドサーバ30は、ジョブリクエストJR1に基づき生成したジョブリクエストJR2の応答として各車載端末20から受信したアップロードデータUD2に含まれる状態カウント情報が示すアクティブ遷移回数を積算することで、ジョブリクエストJR1により依頼されたジョブに対するアクティブ延べ車両数を算出する。このように、ビークルクラウドサーバ30は、ジョブリクエストJR2の送信先となる車載端末20から受信したアップロードデータUD2に含まれる状態カウント情報が示すアクティブ遷移回数を参照することで、ジョブリクエストJR2により依頼されたジョブに対するアクティブ延べ車両数を好適に算出することができる。インアクティブ車両数、アクティブ車両数、及びアクティブ延べ車両数は、「移動体数情報」の一例である。
 「データ収集車両数」は、ジョブリクエストJR1により依頼されたジョブに対して収集データをアップロードした車両数である。本実施例では、ビークルクラウドサーバ30は、ジョブリクエストJR1に基づき生成したジョブリクエストJR2の応答として各車載端末20から受信したアップロードデータUD2のうち、収集データが含まれていたアップロードデータUD2の送信元の車両数を、データ収集車両数として算出する。
 次に、アップロードデータUD1の用途について補足説明する。
 ジョブリクエストJR1の応答として図9に示すようなデータ構造を有するアップロードデータUD1を受信したサービスクラウドサーバ40は、アップロードデータUD1に含まれる各車両数の統計に基づき、返信された収集データの信頼性の判定、データ収集依頼の有効性やコスト効率の判定などを行うことができる。
 例えば、サービスクラウドサーバ40は、インアクティブ車両数に対するアクティブ車両数又は/及びデータ収集車両数の割合を示す割合情報を生成することで、ジョブリクエストJR1に基づくデータ収集依頼の有効性やコスト効率を示す指標を好適に算出することができる。例えば、サービスクラウドサーバ40は、上述の割合情報が示す割合が高いほど、データ収集依頼の有効性やコスト効率が高いと判定することができる。また、サービスクラウドサーバ40は、アクティブ車両数、アクティブ延べ車両数、データ収集車両数などを参照することで、ビークルクラウドサーバ30から受信したアップロードデータUD1に含まれる収集データの信頼性を好適に判定することができる。例えば、サービスクラウドサーバ40は、アクティブ車両数、アクティブ延べ車両数、及びデータ収集車両数が高いほど、ビークルクラウドサーバ30から受信した収集データの信頼性が高いと判定することができる。
 なお、アップロードデータUD1のデータ構造例は、図9に示すものに限定されない。例えば、アップロードデータUD1には、インアクティブ状態となった車両の延べ数を示すインアクティブ延べ車両数が含まれてもよい。この場合、ビークルクラウドサーバ30は、各車載端末20から受信したアップロードデータUD1に含まれる状態カウント情報が示すインアクティブ遷移回数を積算することで、上述のインアクティブ延べ車両数を決定する。
 (6)処理フロー
 次に、有効な状態管理フラグFsを含むジョブリクエストJR1及びジョブリクエストJR2が生成された場合に車載端末20及びビークルクラウドサーバ30が実行する処理について、図10及び図11のフローチャートを参照して具体的に説明する。
 (6-1)車載端末の処理
 図10は、有効な状態管理フラグFsが含まれるジョブリクエストJR2を受信した場合に車載端末20が実行する処理手順を示すフローチャートである。車載端末20は、図10に示すフローチャートの処理を繰り返し実行する。
 まず、車載端末20は、ビークルクラウドサーバ30から有効な状態管理フラグFsを含むジョブリクエストJR2を受信する(ステップS101)。そして、車載端末20は、ジョブリクエストJR2に対して所定の認証処理を行い、受信したジョブリクエストJR2を認証できたか否か判定する(ステップS102)。
 そして、車載端末20は、受信したジョブリクエストJR2の認証処理が成功した場合(ステップS102;Yes)、ジョブリクエストJR2に有効な状態管理フラグFsが含まれていることから、ジョブリクエストJR2に対する状態カウント情報を生成する(ステップS103)。ここで、ジョブリクエストJR2の認証処理が成功した場合、車載端末20は、ジョブ状態が自動的にインアクティブ状態となるため、アクティブ遷移回数を0、インアクティブ遷移回数を1とした状態カウント情報を生成する。
 一方、車載端末20は、受信したジョブリクエストJR2の認証処理が失敗した場合(ステップS102;No)、認証が失敗した旨(即ちフェールとなった旨)のアップロードデータUD2をビークルクラウドサーバ30へ送信する(ステップS110)。
 ステップS103で状態カウント情報の生成後、車載端末20は、受信したジョブリクエストJR2に含まれる「データ収集条件情報」が示すジョブの実行条件を満たすか否か判定する(ステップS104)。そして、車載端末20は、ジョブの実行条件を満たすと判定した場合(ステップS104;Yes)、センサ部27が出力するデータを用いて、ジョブリクエストJR2に含まれる「収集データ指定情報」により指定されたデータの収集を行う(ステップS105)。この場合、ジョブのジョブ状態は、アクティブ状態となる。一方、車載端末20は、ジョブの実行条件を満たさないと判定した場合(ステップS104;No)、ステップS105の処理を行うことなくステップS106へ移行する。この場合、ジョブのジョブ状態は、インアクティブ状態となる。
 次に、車載端末20は、ジョブ状態の遷移の有無に応じて状態カウント情報を更新する(ステップS106)。具体的には、車載端末20は、ステップS104の判定処理に基づきジョブがインアクティブ状態からアクティブ状態へ遷移したと判定した場合には、当該ジョブに対するアクティブ遷移回数を1だけ増加させるように状態カウント情報を更新する。一方、車載端末20は、ステップS104の判定処理に基づきジョブがアクティブ状態からインアクティブ状態へ遷移したと判定した場合には、当該ジョブに対するインアクティブ遷移回数を1だけ増加させるように状態カウント情報を更新する。
 次に、車載端末20は、アップロードデータUD2の送信タイミングであるか否か判定する(ステップS107)。アップロードデータUD2の送信タイミングは、種々の規則により定められてもよい。例えば、車載端末20は、ジョブの有効期限の終了時に1度限りアップロードデータUD2を送信するものであってもよく、ステップS105でデータ収集を行った都度アップロードデータUD2を送信するものであってもよく、所定時間間隔ごとにアップロードデータUD2を送信するものであってもよい。具体的なアップロードデータUD2の送信タイミングは、例えば、ビークルクラウドサーバ30から受信したジョブリクエストJR2に含まれるデータ収集条件情報により指定されたタイミングに設定される。
 そして、車載端末20は、アップロードデータUD2の送信タイミングである場合(ステップS107;Yes)、ステップS105で収集した収集データ及びインアクティブ遷移回数とアクティブ遷移回数とを示す状態カウント情報を含むアップロードデータUD2(図8参照)をビークルクラウドサーバ30へ送信する(ステップS108)。なお、車載端末20は、アップロードデータUD2を複数タイミングで送信する態様では、最後の送信タイミングで送信するアップロードデータUD2にのみ状態カウント情報を含めてもよい。また、車載端末20は、ジョブの有効期間における最終的なアクティブ遷移回数及びインアクティブ遷移回数をアップロードデータUD2に含めるため、少なくともジョブの有効期限の終了時点での状態カウント情報を含むアップロードデータUD2をビークルクラウドサーバ30に送信してもよい。この場合のアップロードデータUD2には、収集データが含まれなくともよい。即ち、この場合、車載端末20は、収集データと状態カウント情報との送信タイミングを必ずしも一致させなくともよい。
 次に、車載端末20は、ジョブが終了したか否か判定する(ステップS109)。例えば、受信したジョブリクエストJR2に含まれる「データ収集条件情報」にジョブの有効期限が示されている場合には、当該ジョブの有効期限が徒過したか否か判定する。そして、車載端末20は、ジョブが終了したと判定した場合(ステップS109;Yes)、フローチャートの処理を終了する。一方、車載端末20は、アップロードデータUD2の送信タイミングではないと判定した場合(ステップS107;No)、または、ジョブが終了していないと判定した場合(ステップS109;No)、ステップS104へ処理を戻す。
 (6-2)ビークルクラウドサーバの処理
 図11は、有効な状態管理フラグFsを含むジョブリクエストJR1を受信したビークルクラウドサーバ30が実行する処理手順を示すフローチャートを示す。
 まず、ビークルクラウドサーバ30は、有効な状態管理フラグFsを含むジョブリクエストJR1をサービスクラウドサーバ40から受信する(ステップS201)。そして、ビークルクラウドサーバ30は、記憶部32に記憶された車両情報を参照し、ビークルクラウドサーバ30が管理する車両の車載端末20に対して、ジョブリクエストJR1に基づき生成したジョブリクエストJR2を送信する(ステップS202)。
 その後、ビークルクラウドサーバ30は、ジョブリクエストJR2の送信先である車載端末20からアップロードデータUD2を受信し、記憶部32に記憶する(ステップS203)。そして、ビークルクラウドサーバ30は、予め定めたアップロードデータUD2の収集期間が終了するまで(ステップS204;No)、ステップS203においてアップロードデータUD2の受信及び記憶を繰り返し行う。これにより、ビークルクラウドサーバ30は、複数の車両の車載端末20から供給されるアップロードデータUD2を記憶する。
 また、フローチャートに図示しない態様として、例えば、ある程度リアルタイム性が要求される情報などについては、ビークルクラウドサーバ30は、アップロードデータUD2の収集期間内において、定期的、あるいは断続的に受信したアップロードデータUD2を記憶部32に蓄積することなく、そのままサービスクラウドサーバ40にアップロードデータUD1として逐次送信するようにしてもよい。この場合、ビークルクラウドサーバ30は、アップロードデータUD2の収集期間終了後に、後述するステップS205で集計した状態カウント情報のみをサービスクラウドサーバ40に送信する。
 そして、ビークルクラウドサーバ30は、アップロードデータUD2の収集期間が終了したと判定した場合(ステップS204;Yes)、インアクティブ車両数、アクティブ車両数、アクティブ延べ車両数、データ収集車両数等の集計を行う(ステップS205)。例えば、ビークルクラウドサーバ30は、アクティブ車両数及びアクティブ延べ車両数については、ステップS203で受信及び記憶したアップロードデータUD2に含まれる状態カウント情報が示すアクティブ遷移回数に基づき算出する。また、ビークルクラウドサーバ30は、インアクティブ車両数については、送信履歴情報Ih又は状態カウント情報が示すインアクティブ遷移回数のいずれかに基づき算出し、データ収集車両数については、収集データを含むアップロードデータUD2の送信元の車載端末20を数えることで算出する。なお、ビークルクラウドサーバ30は、同一の車載端末20から同一のジョブに関するアップロードデータUD2を複数回受信していた場合には、最後に受信したアップロードデータUD2に含まれる状態カウント情報に基づき、上述の集計を行うとよい。
 次に、ビークルクラウドサーバ30は、ステップS205での集計結果を含むアップロードデータUD1(図9参照)を、ジョブリクエストJR1の要求元であるサービスクラウドサーバ40へ送信する(ステップS206)。その後、ジョブリクエストJR1を生成したサービスクラウドサーバ40は、ビークルクラウドサーバ30からアップロードデータUD1を受信する。この場合、サービスクラウドサーバ40は、受信したアップロードデータUD1に基づき、返信された収集データの信頼性の判定、データ収集依頼の有効性やコスト効率の判定などを行う。
 (7)適用例
 次に、本実施例の適用例について説明する。ここでは、市町村などの自治体が、街づくり・道路利用解析の一環として、渋滞情報や道路利用状況を詳細に把握するためにジョブ配信システムを利用する例について説明する。
 図12は、本適用例におけるジョブ配信システムの構成例を示す。図12に示すジョブ配信システムは、地図会社が運営する第1サービスクラウドサーバ40Aと、自治体が運営する第1サービスクラウドサーバ40Aと、タクシー会社が運営するビークルクラウドサーバ30と、車載端末20が搭載されたタクシー車両Vとを有する。ここで、第1サービスクラウドサーバ40Aは、実施例のサービスクラウドサーバ40として機能し、第2サービスクラウドサーバ40Bは、第1サービスクラウドサーバ40Aが収集したデータを第1サービスクラウドサーバ40Aから受信するものとする。
 自治体には2つの鉄道の駅(A駅とB駅)があり、各駅前の通りが渋滞するので、駅前通りの拡充を必要とし、計画的に駅前通りを拡充するため、渋滞データを取得する。タクシー車両Vは、2つの鉄道駅の駅前通りを頻繁に走る車両であり、合計80台存在する。また、各駅には、タクシープールが存在する。
 図13は、A駅の駅前通りを示した俯瞰図である。図示のように、A駅付近には、基幹道路50と、基幹道路50から分岐した駅前道路51と、駅前道路51に合流可能なタクシープール52と、が存在する。駅前道路51には、タクシープール52へつながる交差点53と、基幹道路50への入り口となる交差点54とが存在する。
 ここで、第1サービスクラウドサーバ40Aは、図6に示す「収集データ指定情報」として、タクシープール52から出て交差点53から交差点54までの駅前道路51を通過する際の走行時間と滞留(停止)時間、及び、交差点54からタクシープール52に入るまでの走行時間と滞留時間を指定したジョブリクエストJR1を生成する。このジョブリクエストJR1には、次の月曜日から日曜日までの1週間をジョブの有効期限と定め、かつ、朝6時から夜7時までをジョブの実行時間帯と定めた「データ収集条件情報」(図6参照)をさらに含める。そして、第1サービスクラウドサーバ40Aは、ジョブリクエストJR1の応答としてビークルクラウドサーバ30から受信するアップロードデータUD1に基づき、10分間隔に区切られた各時間帯の平均走行時間及び平均滞留時間の算出を行う。そして、第1サービスクラウドサーバ40Aは、算出した平均走行時間及び平均滞留時間をアップロードデータとして第2サービスクラウドサーバ40Bに送信する。この場合、第2サービスクラウドサーバ40Bは、第1サービスクラウドサーバ40Aから受信したアップロードデータに基づき、渋滞情報の内容を吟味する。また、第1サービスクラウドサーバ40Aは、B駅に関しても同様に、ビークルクラウドサーバ30から受信するアップロードデータUD1に基づき、駅前道路に関する平均走行時間及び平均滞留時間の算出を行い、第2サービスクラウドサーバ40Bへその算出結果を含むアップロードデータを送信する。
 このような場合において、第1サービスクラウドサーバ40Aは、有効な状態管理フラグFsをジョブリクエストJR1に含めることで、ジョブ状態等に関する車両数の統計データをビークルクラウドサーバ30からアップロードデータUD1により受信し、第2サービスクラウドサーバ40Bに供給する。これにより、第2サービスクラウドサーバ40Bは、各駅前の渋滞情報の内容を吟味する際に、ジョブ状態等に関する車両数の統計データを考慮することができるため、渋滞情報の的確な検討を行うことができる。また、測定車両数がない又は非常に少ない(即ちアクティブ車両数が非常に少ない)時間帯については、ひどい渋滞のためにタクシーの駅前道路への流入がない時間帯、又は、タクシーの需要がない時間帯(即ち多くのタクシー車両Vがタクシープールで待機した時間帯)だった可能性があると推測することも可能となる。自治体は、収集データ及び上述の車両数の統計データに基づき、タクシー会社等と必要に応じて協議を行い、渋滞情報の取得条件と解析方法などについて調整を行う。
  <第2実施例>
 第2実施例に係る車載端末20は、各ジョブ状態への遷移回数を示す状態カウント情報をビークルクラウドサーバ30へ送信する代わりに、ジョブ状態の遷移に関する履歴情報(「状態履歴情報」とも呼ぶ。)をビークルクラウドサーバ30へ送信する。以後では、ビークルクラウドサーバ30及びサービスクラウドサーバ40の構成、ジョブリクエストJR1、JR2のデータ構造、アップロードデータUD1のデータ構造等については、第1実施例と同一であるため、その説明を省略する。
 図14は、第2実施例に係る車載端末20の内部構成を示すブロック図である。図示のように、車載端末20の記憶部22は、状態履歴情報を記憶している。状態履歴情報は、ジョブリクエストJR2により依頼されたジョブが有効な期間における当該ジョブの状態遷移の履歴情報である。状態履歴情報は、例えば、ジョブが遷移した状態と、遷移した時刻とを、依頼されたジョブごとに(例えばリクエスト識別情報ごとに)関連付けたテーブル情報である。車載端末20は、有効な状態管理フラグFsが先に受信したジョブリクエストJR2に含まれる場合に、対象のジョブに対するジョブ状態の遷移を状態履歴情報として記憶部22に記憶する。
 図15は、第2実施例に係るアップロードデータUD2のデータ構造の一例である。図15に示すように、第2実施例に係るアップロードデータUD2は、状態カウント情報に代えて、「状態履歴情報」を含んでいる。車載端末20は、有効な状態管理フラグFsが対応するジョブリクエストJR2に含まれていた場合に、当該ジョブリクエストJR2により依頼されたジョブの実行結果である収集データと共に、当該ジョブに対応する状態履歴情報を、アップロードデータUD2に含めてビークルクラウドサーバ30に送信する。これにより、アップロードデータUD2を受信したビークルクラウドサーバ30は、状態履歴情報を参照することで、アップロードデータUD2の送信元の車載端末20のインアクティブ遷移回数及びアクティブ遷移回数を好適に算出することが可能となる。状態履歴情報は、「計数情報」の一例である。
 図16は、有効な状態管理フラグFsが含まれるジョブリクエストJR2を受信した場合に第2実施例に係る車載端末20が実行する処理手順を示すフローチャートである。車載端末20は、図16に示すフローチャートの処理を繰り返し実行する。
 車載端末20は、ビークルクラウドサーバ30から有効な状態管理フラグFsを含むジョブリクエストJR2を受信し(ステップS301)、受信したジョブリクエストJR2の認証処理が成功した場合(ステップS302;Yes)、ジョブリクエストJR2により依頼されたジョブに対する状態履歴情報を生成する(ステップS303)。この場合、ジョブ状態が自動的にインアクティブ状態となるため、車載端末20は、インアクティブ状態への遷移を記録した状態履歴情報を生成する。
 そして、車載端末20は、受信したジョブリクエストJR2に含まれる「データ収集条件情報」が示すジョブの実行条件を満たす場合(ステップS304;Yes)、センサ部27が出力するデータを用いて、ジョブリクエストJR2に含まれる「収集データ指定情報」により指定されたデータの収集を行う(ステップS305)。この場合、ジョブのジョブ状態は、アクティブ状態となる。一方、車載端末20は、ジョブの実行条件を満たさないと判定した場合(ステップS304;No)、ステップS305の処理を行うことなくステップS306へ移行する。この場合、ジョブのジョブ状態は、インアクティブ状態となる。
 次に、車載端末20は、ジョブ状態の遷移の有無に応じて状態履歴情報を更新する(ステップS306)。具体的には、車載端末20は、状態履歴情報が示す最新のジョブ状態と比較し、現在のジョブ状態がインアクティブ状態からアクティブ状態へ遷移していると判定した場合には、アクティブ状態への遷移を示すレコードを、対象のジョブに対する状態履歴情報に追加し、アクティブ状態からインアクティブ状態へ遷移していると判定した場合には、インアクティブ状態への遷移を示すレコードを、対象のジョブに対する状態履歴情報に追加する。
 その後、第1実施例と同様に、車載端末20は、アップロードデータUD2の送信タイミングである場合(ステップS307;Yes)、ステップS305で収集した収集データ及び状態履歴情報を含むアップロードデータUD2(図15参照)をビークルクラウドサーバ30へ送信する(ステップS308)。また、車載端末20は、ジョブが終了したと判定した場合(ステップS309;Yes)、フローチャートの処理を終了する。一方、アップロードデータUD2の送信タイミングでない場合(ステップS307;No)、又は、ジョブが終了していない場合(ステップS309;No)、ステップS304へ処理を戻す。
 図17は、有効な状態管理フラグFsを含むジョブリクエストJR1を受信した第2実施例に係るビークルクラウドサーバ30が実行する処理手順を示すフローチャートを示す。
 まず、ビークルクラウドサーバ30は、有効な状態管理フラグFsを含むジョブリクエストJR1をサービスクラウドサーバ40から受信する(ステップS401)。そして、ビークルクラウドサーバ30は、記憶部32に記憶された車両情報を参照し、ビークルクラウドサーバ30が管理する車両の車載端末20に対して、ジョブリクエストJR1に基づき生成したジョブリクエストJR2を送信する(ステップS402)。
 その後、ビークルクラウドサーバ30は、状態履歴情報を含むアップロードデータUD2を車載端末20から受信し、記憶部32に記憶する(ステップS403)。そして、ビークルクラウドサーバ30は、予め定めたアップロードデータUD2の収集期間が終了するまで(ステップS404;No)、ステップS403においてアップロードデータUD2の受信及び記憶を繰り返し行う。
 そして、ビークルクラウドサーバ30は、アップロードデータUD2の収集期間が終了したと判定した場合(ステップS404;Yes)、ステップS403で受信及び記憶したアップロードデータUD2に含まれる状態履歴情報に基づき、車両ごとのアクティブ遷移回数などを算出する(ステップS405)。この場合、ビークルクラウドサーバ30は、アクティブ遷移回数に加えて、インアクティブ遷移回数などについても状態履歴情報に基づき算出してもよい。なお、ビークルクラウドサーバ30は、同一の車載端末20から同一のジョブに関するアップロードデータUD2を複数回受信していた場合には、最後に受信したアップロードデータUD2に含まれる状態履歴情報に基づき、上述の算出を行うとよい。
 そして、ビークルクラウドサーバ30は、インアクティブ車両数、アクティブ車両数、アクティブ延べ車両数、データ収集車両数等の集計を行う(ステップS406)。例えば、ビークルクラウドサーバ30は、アクティブ車両数及びアクティブ延べ車両数については、ステップS405で算出した車両ごとのアクティブ遷移回数に基づき算出する。また、ビークルクラウドサーバ30は、インアクティブ車両数については、送信履歴情報Ih又はステップS405で算出したインアクティブ遷移回数のいずれかに基づき算出し、データ収集車両数については、収集データを含むアップロードデータUD2の送信元の車載端末20を数えることで算出する。
 次に、ビークルクラウドサーバ30は、ステップS405での集計結果を含むアップロードデータUD1(図9参照)を、ジョブリクエストJR1の要求元であるサービスクラウドサーバ40へ送信する(ステップS407)。その後、ジョブリクエストJR1を生成したサービスクラウドサーバ40は、ビークルクラウドサーバ30からアップロードデータUD1を受信する。この場合、サービスクラウドサーバ40は、受信したアップロードデータUD1に基づき、返信された収集データの信頼性の判定、データ収集依頼の有効性やコスト効率の判定などを行う。
 <第3実施例>
 第3実施例に係る車載端末20は、状態カウント情報又は状態履歴情報に代えて、現在のジョブ状態を示す情報(単に「状態情報」とも呼ぶ。)をビークルクラウドサーバ30へ送信する。以後では、サービスクラウドサーバ40の構成、ジョブリクエストJR1、JR2のデータ構造、アップロードデータUD1のデータ構造等については、第1及び第2実施例と同一であるため、その説明を省略する。
 図18は、第3実施例に係るアップロードデータUD2のデータ構造の一例である。図18に示すように、第3実施例に係るアップロードデータUD2は、第1実施例の状態カウント情報又は第2実施例の状態履歴情報に代えて、「状態情報」を含んでいる。
 車載端末20は、有効な状態管理フラグFsがジョブリクエストJR2に含まれていた場合に、当該ジョブリクエストJR2により依頼されたジョブの実行結果である収集データと共に、当該ジョブに対応する現在のジョブ状態を示す状態情報を、アップロードデータUD2に含めてビークルクラウドサーバ30に送信する。この場合、車載端末20は、ビークルクラウドサーバ30から受信したジョブリクエストJR2に含まれるデータ収集条件情報により指定された時間間隔によりアップロードデータUD2をビークルクラウドサーバ30へ送信する。なお、この場合のアップロードデータUD2の送信タイミングは、ジョブごとに定められてもよく、複数のジョブで一律であってもよい。状態情報は、「計数情報」の一例である。
 図19は、第3実施例に係るビークルクラウドサーバ30の内部構成を概略的に示した図である。図19に示すように、ビークルクラウドサーバ30は、状態履歴情報を記憶部32に記憶している。ここで、ビークルクラウドサーバ30は、例えば、状態履歴情報を、車載端末20から受信するアップロードデータUD2に含まれる状態情報に基づき、ジョブごと及び車両IDごとに生成する。この場合、例えば、状態履歴情報は、リクエスト識別情報及び車両IDごとに、状態情報が示すジョブ状態と、状態情報の受信時刻又は生成時刻とを関連付けた情報である。ビークルクラウドサーバ30は、このような状態履歴情報を保持することで、第1実施例及び第2実施例と同様、インアクティブ車両数、アクティブ車両数、アクティブ延べ車両数、データ収集車両数等の集計を好適に行うことができる。
 図20は、有効な状態管理フラグFsが含まれるジョブリクエストJR2を受信した場合に第3実施例に係る車載端末20が実行する処理手順を示すフローチャートである。車載端末20は、図20に示すフローチャートの処理を繰り返し実行する。
 車載端末20は、ビークルクラウドサーバ30から有効な状態管理フラグFsを含むジョブリクエストJR2を受信し(ステップS501)、受信したジョブリクエストJR2の認証処理が成功した場合(ステップS502;Yes)、受信したジョブリクエストJR2が示すジョブの実行条件を満たすか否か判定する(ステップS503)。そして、ジョブの実行条件を満たす場合(ステップS503;Yes)、センサ部27が出力するデータを用いて、ジョブリクエストJR2により指定されたデータの収集を行う(ステップS504)。一方、車載端末20は、ジョブの実行条件を満たさないと判定した場合(ステップS503;No)、ステップS504の処理を行うことなくステップS505へ移行する。
 次に、車載端末20は、アップロードデータUD2の送信タイミングであるか否か判定する(ステップS505)。この場合のアップロードデータUD2の送信タイミングは、ジョブごとに定められてもよく、複数のジョブで一律であってもよい。そして、車載端末20は、アップロードデータUD2の送信タイミングである場合(ステップS505;Yes)、現在のジョブ状態を示す状態情報を生成する(ステップS505)。具体的には、車載端末20は、ジョブの実行条件を満たしていない場合には、当該ジョブがインアクティブ状態であることを示す状態情報を生成し、ジョブの実行条件を満たしている場合には、当該ジョブがアクティブ状態であることを示す状態情報を生成する。
 そして、車載端末20は、ステップS506で生成した状態情報と、ステップS504で収集した収集データとを含むアップロードデータUD2をビークルクラウドサーバ30に送信する(ステップS507)。そして、車載端末20は、ジョブを終了すべきと判定した場合(ステップS508;Yes)、フローチャートの処理を終了する。
 一方、車載端末20は、アップロードデータUD2の送信タイミングでない場合(ステップS505;No)、又は、ジョブが終了していない場合(ステップS508;No)、ステップS503へ処理を戻す。これにより、車載端末20は、ステップS503~ステップS507の処理を、ジョブの有効期限が終了するまで繰り返し実行する。
 図21は、有効な状態管理フラグFsを含むジョブリクエストJR1を受信した第3実施例に係るビークルクラウドサーバ30が実行する処理手順を示すフローチャートを示す。
 まず、ビークルクラウドサーバ30は、有効な状態管理フラグFsを含むジョブリクエストJR1をサービスクラウドサーバ40から受信する(ステップS601)。そして、ビークルクラウドサーバ30は、記憶部32に記憶された車両情報を参照し、ビークルクラウドサーバ30が管理する車両の車載端末20に対して、ジョブリクエストJR1に基づき生成したジョブリクエストJR2を送信する(ステップS602)。
 その後、ビークルクラウドサーバ30は、状態情報を含むアップロードデータUD2を車載端末20から受信し、記憶部32に記憶する(ステップS603)。そして、ビークルクラウドサーバ30は、受信したアップロードデータUD2が示すジョブ及び車両IDに対応する状態履歴情報を更新する(ステップS604)。例えば、ビークルクラウドサーバ30は、対象の状態履歴情報に対し、受信したアップロードデータUD2の状態情報が示すジョブ状態と、時刻情報とを含むレコードを追加する。そして、ビークルクラウドサーバ30は、予め定めたアップロードデータUD2の収集期間が終了するまで(ステップS605;No)、ステップS603及びステップS604を繰り返し行う。
 そして、ビークルクラウドサーバ30は、アップロードデータUD2の収集期間が終了したと判定した場合(ステップS605;Yes)、記憶部32に記憶した状態履歴情報に基づき、車両ごとのアクティブ遷移回数などを算出する(ステップS606)。この場合、ビークルクラウドサーバ30は、アクティブ遷移回数に加えて、インアクティブ遷移回数などについても状態履歴情報に基づき算出してもよい。
 そして、ビークルクラウドサーバ30は、インアクティブ車両数、アクティブ車両数、アクティブ延べ車両数、データ収集車両数等の集計を行う(ステップS607)。例えば、ビークルクラウドサーバ30は、アクティブ車両数及びアクティブ延べ車両数については、ステップS605で算出した車両ごとのアクティブ遷移回数に基づき算出する。また、ビークルクラウドサーバ30は、インアクティブ車両数については、送信履歴情報Ih又はステップS605で算出したインアクティブ遷移回数のいずれかに基づき算出し、データ収集車両数については、収集データを含むアップロードデータUD2の送信元の車載端末20を数えることで算出する。
 次に、ビークルクラウドサーバ30は、ステップS605での集計結果を含むアップロードデータUD1(図9参照)を、ジョブリクエストJR1の要求元であるサービスクラウドサーバ40へ送信する(ステップS608)。その後、ジョブリクエストJR1を生成したサービスクラウドサーバ40は、ビークルクラウドサーバ30からアップロードデータUD1を受信する。この場合、サービスクラウドサーバ40は、受信したアップロードデータUD1に基づき、返信された収集データの信頼性の判定、データ収集依頼の有効性やコスト効率の判定などを行う。
 以上説明したように、ビークルクラウドサーバ30は、サービスクラウドサーバ40が発したジョブリクエストJR1を受信し、複数の車両の車載端末20に対してジョブリクエストJR1に応じたジョブリクエストJR2を送信する。また、ビークルクラウドサーバ30は、複数の車両の車載端末20が正常にジョブリクエストJR2を受信できたことを示す受信結果であるアップロードデータUD2を受信し、アップロードデータUD2に基づき、ジョブリクエストJR2を正常に受信できた車両数であるインアクティブ車両数を計数する。また、ビークルクラウドサーバ30は、ジョブのアクティブ遷移回数が1回以上となるアップロードデータUD2を受信し、当該アップロードデータUD2を送信した車両数及び延べ車両数を表すアクティプ車両数及びアクティブ延べ車両数を計数する。そして、ビークルクラウドサーバ30は、インアクティブ車両数、アクティプ車両数、アクティブ延べ車両数の情報を含むアップロードデータUD1をサービスクラウドサーバ40へ送信する。
 以上説明したように、ビークルクラウドサーバ30は、サービスクラウドサーバ40が発したジョブリクエストJR1を受信する。そして、ビークルクラウドサーバ30は、ジョブリクエストJR1に応じたデータ収集条件情報及び収集データ指定情報と、データ収集条件情報及び収集データ指定情報が示すジョブの状態が、所定条件が満たされた場合に当該ジョブを実行する状態であるアクティブ状態になった回数であるアクティブ遷移回数を計数するための状態カウント情報又は状態履歴情報若しくは状態情報を送信することを示す状態管理フラグFsと、を含むジョブリクエストJR2を生成する。そして、ビークルクラウドサーバ30は、複数の車両の車載端末20に対してジョブリクエストJR2を送信する。そして、ビークルクラウドサーバ30は、ジョブリクエストJR2に対する収集データと状態カウント情報又は状態履歴情報若しくは状態情報とを含むアップロードデータUD2を受信し、状態カウント情報又は状態履歴情報若しくは状態情報に基づき、アクティプ車両数又はアクティブ延べ車両数の少なくとも一方を計数する。そして、ビークルクラウドサーバ30は、上述の計数結果に基づくアップロードデータUD1をサービスクラウドサーバ40に送信する。
 <変形例>
 次に、上述の第1~第3実施例に好適な変形例について説明する。以下の変形例は、任意に組み合わせて上述の実施例に適用してもよい。
 (変形例1)
 第1~第3実施例において、車載端末20に相当する機能が車両Vに内蔵されていてもよい。この場合、車両の電子制御装置(ECU:Electronic Control Unit)は、車両のメモリに記憶されたプログラムを実行することで、車載端末20の制御部24に相当する処理を実行する。この場合、車両Vは、「移動体」の一例であり、車両Vの電子制御装置は、「端末装置」の一例である。
 (変形例2)
 第1実施例の状態カウント情報には、インアクティブ遷移回数に関する情報が含まれていた。これに代えて、状態カウント情報には、インアクティブ遷移回数に関する情報が含まれていなくともよい。
 この場合、車載端末20は、図10のステップS103及びステップS106において、アクティブ遷移回数のみをカウントし、カウントしたアクティブ遷移回数の情報をアップロードデータUD2に含めてビークルクラウドサーバ30に送信する。この場合、ビークルクラウドサーバ30は、図11のステップS205において、インアクティブ車両数を、送信履歴情報Ihに基づき算出する。また、ビークルクラウドサーバ30は、アップロードデータUD2の送信元となる車載端末20の数をカウントすることで、データ収集車両数を算出する。
 同様に、第2実施例の状態履歴情報には、インアクティブ状態への遷移に関する情報が含まれていなくともよい。この場合においても、状態履歴情報を含むアップロードデータUD2を受信したビークルクラウドサーバ30は、図17のステップS406において、インアクティブ車両数を、送信履歴情報Ihに基づき算出すればよい。
 (変形例3)
 第1実施例において、車載端末20は、アップロードデータUD2の送信時に状態履歴情報から状態カウント情報を生成し、アップロードデータUD2に状態カウント情報を含めてもよい。この場合、車載端末20は、図14と同様、記憶部22に状態履歴情報を記憶する。そして、車載端末20は、アップロードデータUD2の送信タイミングにおいて、記憶部22に記憶した状態履歴情報を参照して状態カウント情報を生成し、収集データ等と共にアップロードデータUD2としてビークルクラウドサーバ30へ送信する。
 (変形例4)
 第1~第3実施例において、ジョブリクエストJR1、JR2に含まれるジョブは複数であってもよい。この場合、複数のジョブに共通の実行条件が設定されていてもよく、ジョブごとに異なる実行条件が設定されていてもよい。ジョブごとに異なる実行条件が設定されている場合、ジョブは個々のジョブ状態を持つ。例えば、インアクティブ状態からアクティブ状態への遷移は、実行条件を満たしたジョブが個別にアクティブ状態に遷移する。
 (変形例5)
 第1~第3実施例において、ビークルクラウドサーバ30は、インアクティブ車両数に対するアクティブ車両数の割合、又は、インアクティブ車両数に対するデータ収集車両数の割合等を示す割合情報を生成し、当該割合情報をアップロードデータUD1に含めてサービスクラウドサーバ40へ送信してもよい。これにより、ビークルクラウドサーバ30は、データ収集依頼の有効性やコスト効率を判定するのに必要な情報をサービスクラウドサーバ40に対して好適に送信することができる。本変形例において、上述の割合情報は、「移動体数情報」の一例である。
 20 車載端末
 27 センサ部
 30 ビークルクラウドサーバ
 40 サービスクラウドサーバ

Claims (9)

  1.  情報管理装置が発した要求信号を受信する第1受信部と、
     前記要求信号に応じた指令情報を生成する生成部と、
     複数の移動体に対して前記指令情報を送信する第1送信部と、
     前記複数の移動体が正常に前記指令情報を受信できたことを示す受信結果を受信する第2受信部と、
     前記受信結果に基づき、前記指令情報を正常に受信できた移動体の数を計数する第1計数部と、
     前記指令情報に対する応答情報を受信する第3受信部と、
     前記応答情報に基づき、前記応答情報を送信した移動体の数を計数する第2計数部と、
     前記正常に受信できた移動体の数と、前記応答情報を送信した移動体の数とに関する移動体数情報を、前記情報管理装置に送信する第2送信部と、
    を備えることを特徴とする移動体管理装置。
  2.  前記指令情報は、前記移動体が前記指令情報の示す指令を実行する条件を示す条件情報を含み、
     前記応答情報は、前記条件が満たされたか否かに応じて前記指令情報が取り得る状態に関する情報を含むことを特徴とする請求項1に記載の移動体管理装置。
  3.  前記第1送信部は、前記指令情報と、前記前記指令情報が取り得る状態に関する情報の送信を指示するフラグ情報と、を前記複数の移動体に送信する請求項2に記載の移動体管理装置。
  4.  前記指令情報が取り得る状態は、前記条件が満たされた場合に前記指令が実行される状態である実行状態と前記条件が満たされない場合に前記指令が実行されない状態である非実行状態と、含み、
     前記第2送信部は、前記移動体数情報として、前記正常に受信できた移動体の数に対する前記指令情報が前記実行状態報となった移動体の数の割合を示す情報を前記情報管理装置に送信する請求項2または請求項3に記載の移動体管理装置。
  5.  前記移動体管理装置は、前記第1送信部が前記指令情報を送信した移動体の識別情報と、当該指令情報が示す指令の識別情報と、を関連付けて記憶する記憶部を更に備える請求項1~4のいずれか一項に記載の移動体管理装置。
  6.  前記受信結果は、前記指令情報が正常に受け付けられなかったことを示すフェール情報を含む請求項1~5のいずれか一項に記載の移動体管理装置。
  7.  移動体管理装置が実行する制御方法であって、
     情報管理装置が発した要求信号を受信する第1受信工程と、
     前記要求信号に応じた指令情報を生成する生成工程と、
     複数の移動体に対して前記指令情報を送信する第1送信工程と、
     前記複数の移動体が正常に前記指令情報を受信できたことを示す受信結果を受信する第2受信工程と、
     前記受信結果に基づき、前記指令情報を正常に受信できた移動体の数を計数する第1計数工程と、
     前記指令情報に対する応答情報を受信する第3受信工程と、
     前記応答情報に基づき、前記応答情報を送信した移動体の数を計数する第2計数工程と、
     前記正常に受信できた移動体の数と、前記応答情報を送信した移動体の数とに関する移動体数情報を、前記情報管理装置に送信する第2送信工程と、
    を有することを特徴とする制御方法。
  8.  請求項7に記載の制御方法を、コンピュータにより実行させるプログラム。
  9.  請求項8に記載のプログラムを記憶したことを特徴とする記憶媒体。
PCT/JP2019/050309 2018-12-28 2019-12-23 移動体管理装置、制御方法、プログラム及び記憶媒体 WO2020137950A1 (ja)

Priority Applications (5)

Application Number Priority Date Filing Date Title
EP19903895.1A EP3905214A4 (en) 2018-12-28 2019-12-23 MOVABLE BODY MANAGEMENT APPARATUS, CONTROL METHOD, PROGRAM AND INFORMATION MEDIA
JP2020563244A JPWO2020137950A1 (ja) 2018-12-28 2019-12-23 移動体管理装置、制御方法、プログラム及び記憶媒体
US17/419,174 US12088669B2 (en) 2018-12-28 2019-12-23 Moving body management device, control method, program and storage media
JP2023049572A JP2023076556A (ja) 2018-12-28 2023-03-27 移動体管理装置
JP2023222694A JP2024024021A (ja) 2018-12-28 2023-12-28 移動体管理装置

Applications Claiming Priority (2)

Application Number Priority Date Filing Date Title
JP2018-246488 2018-12-28
JP2018246488 2018-12-28

Publications (1)

Publication Number Publication Date
WO2020137950A1 true WO2020137950A1 (ja) 2020-07-02

Family

ID=71127271

Family Applications (1)

Application Number Title Priority Date Filing Date
PCT/JP2019/050309 WO2020137950A1 (ja) 2018-12-28 2019-12-23 移動体管理装置、制御方法、プログラム及び記憶媒体

Country Status (4)

Country Link
US (1) US12088669B2 (ja)
EP (1) EP3905214A4 (ja)
JP (3) JPWO2020137950A1 (ja)
WO (1) WO2020137950A1 (ja)

Families Citing this family (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR20210136496A (ko) 2020-05-08 2021-11-17 현대자동차주식회사 빅데이터를 이용한 배터리 수명 예측 시스템
KR20210142875A (ko) 2020-05-19 2021-11-26 현대자동차주식회사 빅데이터를 이용한 차량 파워 제어 시스템
KR20210144171A (ko) * 2020-05-21 2021-11-30 현대자동차주식회사 분산 클라우딩을 이용한 차량 제어 시스템
CN112764916B (zh) * 2020-12-18 2023-08-22 北京百度网讯科技有限公司 数据采集的方法及装置

Citations (6)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2006079600A (ja) * 2001-02-15 2006-03-23 Hitachi Ltd 車両管理方法
JP2009080659A (ja) * 2007-09-26 2009-04-16 Aisin Aw Co Ltd 運転支援システム、運転支援方法及び統計プログラム
JP2014081872A (ja) * 2012-10-18 2014-05-08 Denso Corp 車両情報処理装置
JP2014095987A (ja) * 2012-11-08 2014-05-22 Denso Corp 車載機および車両安全制御システム
JP2016156973A (ja) 2015-02-25 2016-09-01 パイオニア株式会社 地図データ記憶装置、制御方法、プログラム及び記憶媒体
JP2017167898A (ja) * 2016-03-17 2017-09-21 住友電工システムソリューション株式会社 交通情報収集システム、交通情報収集方法およびプログラム

Family Cites Families (14)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2002318844A (ja) * 2001-02-15 2002-10-31 Hitachi Ltd 車両管理方法
US20030225668A1 (en) * 2002-03-01 2003-12-04 Mitsubishi Denki Kabushiki Kaisha System and method of acquiring traffic data
JP4840069B2 (ja) * 2006-10-12 2011-12-21 アイシン・エィ・ダブリュ株式会社 ナビゲーションシステム
JP2009020685A (ja) * 2007-07-11 2009-01-29 Honda Motor Co Ltd 交通情報処理装置、交通情報管理サーバ、交通情報管理システム
US8866638B2 (en) * 2011-05-23 2014-10-21 GM Global Technology Operations LLC Acquisition of travel- and vehicle-related data
JP5644689B2 (ja) * 2011-06-15 2014-12-24 株式会社デンソー 車両用無線通信装置および通信システム
US10204460B2 (en) * 2015-07-10 2019-02-12 Verizon Patent And Licensing Inc. System for performing driver and vehicle analysis and alerting
JP6323614B2 (ja) * 2015-08-28 2018-05-16 日産自動車株式会社 プローブデータ収集方法及びプローブデータ収集装置
WO2017035800A1 (zh) * 2015-09-02 2017-03-09 薛俊华 交互式动态云导航系统
JP6756977B2 (ja) * 2016-09-28 2020-09-16 日本電気株式会社 ドライブレコーダ
DE102017207014A1 (de) * 2017-04-26 2018-10-31 Audi Ag Verfahren zur Datenerhebung
US10518729B2 (en) * 2017-08-02 2019-12-31 Allstate Insurance Company Event-based connected vehicle control and response systems
JP6905685B2 (ja) * 2017-10-26 2021-07-21 トヨタ自動車株式会社 情報管理装置及びプログラム
US10703381B2 (en) * 2018-11-28 2020-07-07 International Business Machines Corporation Intelligent vehicle action decisions

Patent Citations (6)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2006079600A (ja) * 2001-02-15 2006-03-23 Hitachi Ltd 車両管理方法
JP2009080659A (ja) * 2007-09-26 2009-04-16 Aisin Aw Co Ltd 運転支援システム、運転支援方法及び統計プログラム
JP2014081872A (ja) * 2012-10-18 2014-05-08 Denso Corp 車両情報処理装置
JP2014095987A (ja) * 2012-11-08 2014-05-22 Denso Corp 車載機および車両安全制御システム
JP2016156973A (ja) 2015-02-25 2016-09-01 パイオニア株式会社 地図データ記憶装置、制御方法、プログラム及び記憶媒体
JP2017167898A (ja) * 2016-03-17 2017-09-21 住友電工システムソリューション株式会社 交通情報収集システム、交通情報収集方法およびプログラム

Also Published As

Publication number Publication date
US20220109726A1 (en) 2022-04-07
US12088669B2 (en) 2024-09-10
JP2023076556A (ja) 2023-06-01
EP3905214A4 (en) 2022-09-14
JP2024024021A (ja) 2024-02-21
EP3905214A1 (en) 2021-11-03
JPWO2020137950A1 (ja) 2021-11-11

Similar Documents

Publication Publication Date Title
WO2020137950A1 (ja) 移動体管理装置、制御方法、プログラム及び記憶媒体
CN109084794B (zh) 一种路径规划方法
JP6927088B2 (ja) 走行データ収集システム、走行データ収集センタ、及び車載端末
CN114080537B (zh) 收集与可导航网络有关的用户贡献数据
JP2019053652A (ja) ドライバレス輸送システム
JP2015097007A (ja) プローブ情報管理装置、プローブ情報管理システムおよびプローブ情報管理方法
US20230112009A1 (en) Data structures, storage media, storage device and receiver
JP2024086745A (ja) 地図データ構造、情報処理装置及び地図データ生成装置
JP6951906B2 (ja) 中止地点管理システム、中止地点通知システム、中止地点案内システムおよび中止地点管理プログラム
JP2019168993A (ja) データ構造、情報処理装置、制御方法、プログラム及び記憶媒体
JP2020107148A (ja) 移動体管理装置、端末装置、データ構造、制御方法、プログラム及び記憶媒体
WO2019181839A1 (ja) データ構造、端末装置、データ通信方法、プログラム及び記憶媒体
JP2023001276A (ja) データ構造、端末装置、データ通信方法、プログラム及び記憶媒体
WO2019188282A1 (ja) サーバ装置、情報処理方法、プログラム及び記憶媒体
JP2023076483A (ja) 情報送信装置、制御方法、プログラム及び記憶媒体
JP4847853B2 (ja) 車載装置
JP2004125429A (ja) ナビゲーションシステム、ナビゲーションセンタ、車載ナビゲーション装置、およびナビゲーション方法
WO2019181844A1 (ja) データ構造、情報処理装置、データ通信方法、プログラム及び記憶媒体
JP6847794B2 (ja) メッセージ配信制御システムおよびテレマティクスセンタ
JP2019168610A (ja) データ構造、情報処理装置及び地図作成装置
WO2019182083A1 (ja) データ構造、情報送信装置、制御方法、プログラム及び記憶媒体
JP6239331B2 (ja) 情報配信システム、情報端末装置
JP2019174117A (ja) データ構造、情報送信装置、制御方法、プログラム及び記憶媒体
JP2019168437A (ja) データ構造、情報送信装置、制御方法、プログラム及び記憶媒体
JP2019168798A (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: 19903895

Country of ref document: EP

Kind code of ref document: A1

ENP Entry into the national phase

Ref document number: 2020563244

Country of ref document: JP

Kind code of ref document: A

NENP Non-entry into the national phase

Ref country code: DE

ENP Entry into the national phase

Ref document number: 2019903895

Country of ref document: EP

Effective date: 20210728