Patent Description:
In recent years, technology for realizing support for recognition, determination, and operation of drivers by installing communication functions in automobiles and acquiring various types of information such as road information from a cloud connected to the Internet has been promoted. Specifically, a method of analyzing videos captured by cameras installed on roads and notifying vehicles in motion of analysis results via the Internet or the like, and the like are conceivable.

As a method of notifying a vehicle of analysis results, for example, International Publication <CIT> describes a configuration in which a vehicle is notified of an asynchronous message via an identifier called a topic using a method called publishing/subscribing.

In the publishing/subscribing method, a broker that mediates communication between a publishing device and a subscribing device is provided. The subscribing device can subscribe to the broker for desired published messages and receive messages posted by the publishing device to the broker.

Furthermore, <CIT> refers to a method for subscribing a mobile equipment to information specific to a geographic location, in a Mobile Edge Computing (MEC) architecture, and in particular a method for sending to a mobile equipment information on an event of a type by a data processing peripheral server hosting a notification service linked to the geography of a location in an MEC architecture network.

However, if a movable apparatus such as a vehicle communicates with a server periodically, for example, the server will have to perform more processing to receive position information and the vehicle will have to perform more processing to transmit position information to the server, and if a large number of vehicles are present, there is a problem of putting pressure on a communication band.

Hence, it is an object underlying the invention to solve the above problem. According to the invention, this object is achieved by a control device according to claim <NUM>, a movable apparatus according to dependent claim <NUM>, a control method according to claim <NUM>, a non-transitory computer-readable storage medium according to claim <NUM> and an information processing device according to claim <NUM>. Further features and advantageous modifications are shown in the dependent claims.

One aspect of the present invention is a control device mountable on a movable apparatus and includes at least one processor or circuit configured to function as: a position information acquisition unit configured to acquire position information of the movable apparatus, wherein the position information of the movable apparatus acquired by the position information acquisition unit is position information of a current position of the movable apparatus or position information of a destination of the movable apparatus; a position information notification unit configured to notify an information processing device of the position information acquired by the position information acquisition unit; a distribution connection area acquisition unit configured to acquire, from the information processing device, distribution connection area information corresponding to the position information notified by the position information notification unit, wherein the distribution connection area information is information indicating a connection area of a distribution range corresponding to a communication area of a base station, and the distribution connection area corresponds to an area provided such that the movable apparatus receives distribution of information before reaching the distribution range in consideration of communication and processing delays; a transmission unit configured to transmit any one of a subscription registration request and a subscription cancellation request to the information processing device on the basis of an area indicated by the distribution connection area information acquired by the distribution connection area acquisition unit and a position indicated by the position information acquired by the position information acquisition unit; and a reception unit configured to receive a published message transmitted from the information processing device in response to the request transmitted by the transmission unit.

Hereinafter, with reference to the accompanying drawings, favorable modes of the present invention will be described using Embodiments. In each diagram, the same reference signs are applied to the same members or elements, and duplicate description will be omitted or simplified.

<FIG> is a diagram showing a schematic configuration of a system according to a first embodiment of the present invention. <FIG> shows a state in which a vehicle <NUM> such as an automobile is traveling through one of a plurality of intersections. The vehicle <NUM> is approaching an intersection A107 and is traveling toward an intersection B108.

The vehicle <NUM> is equipped with an in-vehicle device <NUM> capable of wireless communication. The in-vehicle device <NUM> is an example of a control device. The vehicle <NUM> is an example of a movable apparatus and has a moving unit (not shown) such as an engine or a motor for moving the movable apparatus. A control device according to the present invention is mountable on the movable apparatus. That is the control device includes a fixedly mounted apparatus or a mobile PC tablet or the like that can be brought into the movable apparatus. The in-vehicle device <NUM> is capable of wireless communication via a base station <NUM> and realizes publish/subscribe message exchange via a server <NUM>. The in-vehicle device <NUM> serves as a subscribing device. Details of the in-vehicle device <NUM> will be described later.

The server <NUM> is a server that performs various types of data processing. The server <NUM> can be connected to the in-vehicle device <NUM>, a camera <NUM>, and a camera <NUM> via the base station <NUM> through wireless communication. Details of the server <NUM> will be described later. The server <NUM> is an example of an information processing device.

The cameras <NUM> and <NUM> are devices that are installed on a road and can capture an image of traffic conditions such as intersections, analyze road information from captured image data, and notify other devices of analysis results wirelessly or by wire. The camera <NUM> is installed at a position at which it can capture an image of the vicinity of the intersection A107, and the camera <NUM> is installed at a position at which it can capture an image of the vicinity of the intersection B108.

The base station <NUM> is a base station device for mobile communication having a communication area at least near the intersection A107 and the intersection B108. The base station <NUM> wirelessly communicates with the in-vehicle device <NUM>, the camera <NUM>, and the camera <NUM> within the communication area. The base station <NUM> enables communication between equipment that performs wireless communication within the communication area and the server <NUM> located on the Internet or a cloud.

The in-vehicle device <NUM>, the camera <NUM>, the camera <NUM>, and the server <NUM> are in a state in which they can communicate on the same network through the base station <NUM>. The intersection A107 and the intersection B108 are intersections through which the vehicle <NUM> and other vehicles can pass.

Next, configurations of the in-vehicle device <NUM>, the camera <NUM>, the camera <NUM>, and the server <NUM> according to the first embodiment will be described. The configuration which will be described below is merely an example, and a part (or in some cases, all) of components described may be replaced with another component that performs a similar function or may be omitted, and the components described may be added thereto. Furthermore, one block shown in the following description may be divided into a plurality of blocks or a plurality of blocks may be integrated into one block.

<FIG> is a block diagram showing the configuration of the in-vehicle device <NUM> shown in <FIG>. The in-vehicle device <NUM> includes a position information processing unit <NUM>, a storage unit <NUM>, a measurement unit <NUM>, a message processing unit <NUM>, a communication unit <NUM>, a control unit <NUM>, and a distribution connection area detection unit <NUM>.

The position information processing unit <NUM> manages and processes position information of the vehicle <NUM> equipped with the in-vehicle device <NUM>. The position information processing unit <NUM> acquires the position information of the vehicle <NUM> from a GNSS, an odometer, a gyro sensor, an acceleration sensor, and the like provided in the vehicle <NUM>. GNSS is an abbreviation for Global Navigation Satellite System.

The storage unit <NUM> stores topic information and the like necessary for the publishing/subscribing method. The measurement unit <NUM> is a measurement unit that measures a moving distance, moving time, and the like of a vehicle that is traveling. The message processing unit <NUM> realizes message communication according to the publishing/subscribing method. The message processing unit <NUM> mainly realizes processing on a subscribing side in the in-vehicle device <NUM>.

The communication unit <NUM> transmits messages generated by the message processing unit <NUM>, messages generated by the control unit <NUM>, and the like via the base station <NUM> through wireless communication. The communication unit <NUM> also performs processing for receiving messages and the like from other devices via the base station <NUM>. The control unit <NUM> performs control by controlling each function in the above-described in-vehicle device <NUM>.

The distribution connection area detection unit <NUM> determines a positional relationship between the position information of the vehicle <NUM> equipped with the in-vehicle device <NUM> and a distribution connection area. Details of the distribution connection area will be described later.

<FIG> is a block diagram showing the configuration of each of the cameras <NUM> and <NUM> shown in <FIG>. The cameras <NUM> and <NUM> each have a camera function processing unit <NUM>, a storage unit <NUM>, a video analysis unit <NUM>, a message processing unit <NUM>, a communication unit <NUM>, and a control unit <NUM>. Although the camera <NUM> will be described below, the configuration of the camera <NUM> is the same as that of the camera <NUM>.

The camera function processing unit <NUM> performs general processing of a camera function such as video shooting. The storage unit <NUM> stores information about the camera function, information about the installation location of the camera <NUM>, information about a captured video range, and the like. The storage unit <NUM> also stores topics associated with the information about the installation location of the camera <NUM>, the information about the captured video range, and the like.

Here, the camera <NUM> installed near the intersection A107 stores this information under the topic name "Intersection_00A. " Further, the camera <NUM> installed near the intersection B108 stores this information under the topic name "Intersection_00B.

The video analysis unit <NUM> analyzes a video captured by the camera function processing unit <NUM> and analyzes road conditions such as intersections. Specifically, the video analysis unit <NUM> analyzes events that affect vehicle operation, such as presence or absence of accidents, traffic jams, emergency vehicles, construction vehicles, and abnormally running vehicles, and the like.

The message processing unit <NUM> realizes message communication according to the publishing/subscribing method. The message processing unit <NUM> mainly realizes processing on a publishing side and generates messages for publishing-distributing analysis results from the video analysis unit <NUM>. In addition, the message processing unit <NUM> distributes messages by associating the information about the installation location of the camera, the information about the captured video range, and the like stored in the storage unit <NUM> with topics.

The communication unit <NUM> performs wireless communication via the base station <NUM> and transmits a message generated by the message processing unit <NUM> to the server <NUM>. The control unit <NUM> performs control by controlling each function in the camera <NUM> described above.

<FIG> is a block diagram showing the configuration of the server <NUM> shown in <FIG>. The server <NUM> includes a topic management unit <NUM>, a storage unit <NUM>, a broker unit <NUM>, a communication unit <NUM>, and a control unit <NUM>.

The topic management unit <NUM> manages data for notifying the in-vehicle device <NUM> of a topic for which optimal road traffic information can be received for position information received from the in-vehicle device <NUM>. Further, the topic management unit <NUM> manages distribution range information and distribution connection area information corresponding to the topic.

Here, the topic management unit <NUM> will be described in more detail with reference to <FIG> and <FIG>. <FIG> is a diagram showing an example of a table included in the topic management unit <NUM>. <FIG> is a diagram for describing entering and exiting a distribution connection area.

As shown in <FIG>, the topic management unit <NUM> manages "target position information," "distribution range information," and "distribution connection area information" in association with a "topic identifier. " The "topic identifier" is an identifier used by each of the cameras <NUM> and <NUM> at the time of publishing distribution.

The "target position information" is geographical position information of the camera. The "distribution range information" is information indicating a range in which information captured and analyzed by the camera is distributed. In <FIG>, a range <NUM> indicates the range determined by the "distribution range information. " The "distribution connection area information" is information indicating a connection area of the distribution range.

In <FIG>, the range <NUM> indicates the range determined by the "distribution connection area information. " The in-vehicle device <NUM> determines the connection area of the distribution range using the "distribution connection area information. " This "distribution connection area information" correspond to an area provided such that a moving vehicle receives distribution of information before reaching the distribution range in consideration of delays including a delay in communication between the in-vehicle device <NUM> and the base station <NUM>, a processing time of the in-vehicle device <NUM> and the server <NUM>, and the like.

Although the range <NUM> which is the "distribution range information" is shown as a circular range in <FIG> and <FIG>, it is not limited to a circular range and may be managed using an arbitrary rectangle, polygon, and a logical product and a logical sum of combinations thereof.

Further, although the range <NUM> which is the "distribution connection area information" is described as distance information offset with respect to the "distribution range information" in <FIG> and <FIG>, it is not limited thereto and may be managed in the same manner as the "distribution range information. " Further, the server <NUM> may perform management such that the distribution range is handled synonymously with the distribution connection area, assuming that there is no setting as the distribution connection area.

The "distribution connection area information" may be calculated by the server <NUM> on the basis of the boundary of the "distribution range information. " Further, the server <NUM> may prepare and manage a plurality of distribution connection areas for a single "topic identifier" and use them suitably according to the purpose.

For example, different distribution connection areas may be set according to the speed of the vehicle, or the server <NUM> may be notified of attributes of vehicles, motorcycles, bicycles, pedestrians, and the like to switch to a suitable distribution connection area, or dynamically switch distribution connection areas.

The server <NUM> may statically store the information shown in <FIG> in advance. The server <NUM> may execute processing such as acquiring the information shown in <FIG> from the cameras <NUM> and <NUM> at the time of or immediately after connection processing of the cameras <NUM> and <NUM> which will be described later.

For example, a method in which the server <NUM> is notified from the cameras <NUM> and <NUM> of attribute information such as installation position information, distribution range information, distribution connection area information, and a topic name to be used at the time of publishing in association with each other and stores them is conceivable. The distribution connection area information may be determined by the control unit <NUM> of the server <NUM>. The server <NUM> stores the information shown in <FIG> in storage unit <NUM>.

The topic management unit <NUM> can select an optimal topic by comparing position information received from the in-vehicle device <NUM> and distribution range information of the cameras <NUM> and <NUM>.

The broker unit <NUM> mediates communication between a publishing device and a subscribing device in the publishing/subscribing method. An example of processing is described below. When the broker unit <NUM> receives a subscription registration request transmitted from another device, the broker unit <NUM> associates the IP address, port number, and the like of the device with a desired topic and stores the same in the storage unit <NUM>.

Further, when the broker unit <NUM> receives a publishing distribution request from another device, the broker unit <NUM> distributes a message to the device if a subscription registration request is received for the topic of the distribution request.

The communication unit <NUM> receives subscription registration requests processed by the broker unit <NUM> and distributes published messages. The communication unit <NUM> realizes communication with the cameras <NUM> and <NUM> and the in-vehicle device <NUM> via the base station <NUM>. The control unit <NUM> performs control by controlling each function in the server <NUM> described above.

Processing of the system of the first embodiment will be described below with reference to the flowcharts shown in <FIG> and <FIG> and the operation sequence diagram shown in <FIG>. <FIG> is a flowchart showing processing executed by the in-vehicle device <NUM>.

The flowchart shown in <FIG> can be realized by the control unit <NUM> executing a control program stored in the storage unit <NUM> to perform calculation and processing of information and control of each piece of hardware.

<FIG> is a flowchart showing processing executed by the server device <NUM>. The flowchart shown in <FIG> can be realized by the control unit <NUM> executing a control program stored in the storage unit <NUM> to perform calculation and processing of information and control of each piece of hardware.

First, as shown in <FIG>, connection processing between devices is performed. The in-vehicle device <NUM>, the camera <NUM>, the camera <NUM>, and the server <NUM> are in a state in which they can communicate on the same network through the base station <NUM>. In step F701 of <FIG>, the camera <NUM> and the server <NUM> perform connection processing according to a protocol that realizes the publishing/subscribing method.

In step F702, the server <NUM> and the in-vehicle device <NUM> perform connection processing according to the protocol that realizes the publishing/subscribing method. In step F703, the camera <NUM> and the server <NUM> perform connection processing according to the protocol that realizes the publishing/subscribing method.

Examples of the protocol of the publishing/subscribing method include MQ Telementary Transport (MQTT), Robot Operating System (ROS), and the like. Any one may be used in the first embodiment.

The in-vehicle device <NUM> first executes the following processing. In step S501 of <FIG>, the control unit <NUM> of the in-vehicle device <NUM> acquires position information of the vehicle <NUM> equipped with the in-vehicle device <NUM> from the vehicle <NUM> via the position information processing unit <NUM>. This processing performed by the position information processing unit <NUM> is an example of a position information acquisition step of acquiring the position information of the vehicle <NUM>.

Here, the position information of the vehicle <NUM> is information indicating the current position of the vehicle <NUM>. Further, it is assumed here that the vehicle <NUM> is traveling at the point of the intersection A107 in <FIG>. The position information is originally composed of complicated data such as GNSS, gyro sensor, and acceleration sensor data but here, they are collectively represented as "intersection A position information.

In steps S502 and F704, the control unit <NUM> notifies the server <NUM> of "intersection A position information" which is the acquired position information via the communication unit <NUM>. This processing performed by the communication unit <NUM> is an example of a position information notification step of notifying the server <NUM> of the position information acquired in the position information acquisition step.

In step S503, the control unit <NUM> waits for a response from the server <NUM>. Information received through a response from the server <NUM> includes both a topic name and distribution connection area information, or only the distribution connection area information.

Processing of receiving a response from the server <NUM> is an example of a distribution connection area acquisition step of acquiring, from the server <NUM>, the distribution connection area information corresponding to the position information notified in the position information notification step. When the control unit <NUM> determines that a response has been received from the server <NUM>, processing of step S504 is executed.

In step S504, the control unit <NUM> updates the position information according to movement of the vehicle <NUM>, and monitors entry/exit of the vehicle <NUM> to/from the distribution connection area while constantly comparing the position information with the distribution connection area information. This processing is an example of a comparison step of comparing the area indicated by the distribution connection area information acquired in the distribution connection area acquisition step with the position indicated by the position information acquired in the position information acquisition step.

In this step, the control unit <NUM> may determine whether or not the vehicle <NUM> has entered or exited the distribution connection area depending on whether or not the position information of the vehicle <NUM> is included in the distribution connection area with reference to the distribution connection area information along with update of the position information according to movement of the vehicle <NUM>.

On the other hand, the server <NUM> executes the following processing. In step S601 of <FIG>, the control unit <NUM> of the server <NUM> determines whether the position information of the vehicle <NUM> has been received from the in-vehicle device <NUM> via the communication unit <NUM>. When the control unit <NUM> determines that the position information of the vehicle <NUM> has been received, processing of step S602 is executed.

In step F705, the control unit <NUM> transfers the received position information of the vehicle <NUM> to the topic management unit <NUM>. Here, it is assumed that "intersection A position information" has been received as the position information of the vehicle <NUM>.

In steps S602 and F706, the control unit <NUM> causes the topic management unit <NUM> to select a topic having a distribution range or a distribution connection area in which the "intersection A position information" is included. An example of a table managed by the topic management unit <NUM> is the table shown in <FIG>.

Here, it is assumed that the latitude and longitude included in the "intersection A position information" are within a distribution range or a distribution connection area indicated by the topic identifier "Intersection_00A" of the table. Therefore, the topic management unit <NUM> selects "Intersection_00A" as the topic identifier.

In step S603, the control unit <NUM> searches for information on the next distribution connection area that the vehicle <NUM> may enter. As a method of searching for this distribution connection area information, for example, a method of extracting route information that the vehicle <NUM> can take and searching for connection area information through which the vehicle <NUM> passes first on all routes can be used.

As another method, for example, a method of designating a radius having the position of the vehicle <NUM> as a center and searching for connection area information present within the radius can be used. As a method of searching for the distribution connection area information, it is preferable to adopt a method that does not miss any retrieval.

In steps S604 and F707, the control unit <NUM> notifies the in-vehicle device <NUM> of "selected topic," "distribution connection area information corresponding to the topic," and "information on next distribution connection area that the vehicle may enter/exit" via the communication unit <NUM>.

Subsequently, the in-vehicle device <NUM> executes the next processing. In step S505, the control unit <NUM> stores topics subscription-registered so far and compares received topics with the subscription-registered topics.

In step S506, as a result of comparison in step S505, the control unit <NUM> determines whether or not there is any topic that has not been subscription-registered topic among the received topics. If the control unit <NUM> determines that there is a topic that has not been subscription-registered among the received topics, processing of step S507 is executed.

If the control unit <NUM> determines that there is no topic that has not been subscription-registered among the received topics, processing of step S508 is executed. If the current state is a state in which subscription registration has not yet been performed, processing of step S507 is executed.

In step S507, the control unit <NUM> makes a subscription registration request with respect to a topic that has not been subscription-registered among the received topics. This processing is an example of transmission means for transmitting a subscription registration request and a subscription cancellation request to the server <NUM> according to the comparison result of the comparison step. Here, the subscription registration request will be described.

<FIG> is a diagram showing an example of message formats processed by the message processing unit <NUM>. At the time of subscription, the message processing unit <NUM> sets "Subscribe" to "message type" of a message using the format shown in <FIG>.

Subsequently, the message processing unit <NUM> sets "Intersection_00A" previously notified as the topic name to "message length," "topic length," and "topic" of the message to generate the message. In step F708, the control unit <NUM> transmits the message generated by the message processing unit <NUM> to the server <NUM> via the communication unit <NUM> as a subscription registration request.

When the control unit <NUM> of the server <NUM> receives the subscription registration request from the in-vehicle device <NUM> via the communication unit <NUM>, the control unit <NUM> associates the topic included in the registration request with the IP address, port number, and the like and stores the same in the storage unit <NUM>. By this processing, the in-vehicle device <NUM> is subscription-registered for the topic "Intersection_00A" in the broker unit <NUM>.

Although not shown, when the in-vehicle device <NUM> transmits the position information, the control unit <NUM> of the server <NUM> that has received the position information causes the topic management unit <NUM> to select a topic, and topic registration of the in-vehicle device <NUM> may be performed by the broker unit <NUM> as a proxy.

The in-vehicle device <NUM> may set "Subscribe" to "message type" using the format shown in <FIG>, add position information instead of setting "topic" and transmit a subscription registration request.

The control unit <NUM> of the server <NUM> that received the registration request causes the topic management unit <NUM> to select a topic because there is no topic setting but position information has been added, and the broker unit <NUM> may perform topic registration as a proxy for the in-vehicle device <NUM>.

Meanwhile, the cameras <NUM> and <NUM> installed on the road are capturing an image of the intersections A107 and B108. As described above, each of the cameras <NUM> and <NUM> has the video analysis unit <NUM> that analyzes captured video data, and the video analysis unit <NUM> analyzes captured data.

Here, it is assumed that an accident has occurred at the intersection A107 that the vehicle <NUM> is approaching. The camera <NUM> analyzes imaging data in the video analysis unit <NUM> and recognizes that an accident has occurred at the intersection A107. The control unit <NUM> of the camera <NUM> forms the analysis result of the video analysis unit <NUM> into a message in a format that can be published and distributed by the message processing unit <NUM>. Specific processing will be described below using the message format example of <FIG> as well.

The message processing unit <NUM> of the camera <NUM> sets "Publish" to "message type" of a message using the format shown in <FIG> at the time of publishing distribution.

Subsequently, the message processing unit <NUM> sets the topic "Intersection_00A" associated with the installation location of the camera <NUM> to "message length," "topic length," and "topic" of the message to generate the message.

In step F709, the control unit <NUM> causes the message processing unit <NUM> to store the analysis result of the video analysis unit <NUM> in the "message" of the message and sends this message to the server <NUM> via the communication unit <NUM> as a publishing distribution request.

When the control unit <NUM> of the server <NUM> receives the publishing distribution request from the camera <NUM>, the broker unit <NUM> checks the registration state of the topic included in the publishing distribution request. Specifically, it checks presence or absence of a device that has subscription-registered to the topic included in the publishing request.

Here, as described above, the in-vehicle device <NUM> has already performed subscription registration processing for the topic "Intersection_00A. " Therefore, in step F710, the control unit <NUM> distributes a published message received from the camera <NUM> to the in-vehicle device <NUM> via the communication unit <NUM>.

In step S510, the in-vehicle device <NUM> receives the published message transmitted in processing of step F710. This processing is an example of a reception step of receiving the published message transmitted from the server <NUM> in accordance with a registration/cancellation state according to the subscription registration request and the subscription cancellation request transmitted in the transmission step.

By receiving the published message based on the publishing distribution request issued by the camera <NUM>, the in-vehicle device <NUM> can ascertain that the accident has occurred near the intersection A107.

At step F711, the vehicle <NUM> is moving. In step S511, the distribution connection area detection unit <NUM> detects entry/exit to/from the distribution connection area based on information from the measurement unit <NUM> of the in-vehicle device <NUM>. Processing of step S511 is executed at any time.

<FIG> is a diagram for describing detection of entry/exit of a vehicle in a distribution area and a distribution connection area. A vehicle <NUM> travels along a route <NUM> and a route <NUM>. A distribution range <NUM> indicates a distribution range of information associated with a topic name.

A distribution connection area <NUM> indicates a distribution connection area around the distribution range <NUM>. The distribution connection area <NUM> may be treated as a part of a range for acquiring distribution information as synonymous with the distribution range <NUM>.

The vehicle <NUM> traveling along the route <NUM> moves from outside to inside the distribution connection area <NUM>. The vehicle <NUM> traveling along the route <NUM> moves from inside to outside the distribution connection area <NUM>. Detection of entry/exit to/from the distribution connection area <NUM> means detection of movement from inside to outside and movement from outside to inside of this distribution connection area <NUM>.

The control unit <NUM> of the in-vehicle device <NUM> re-acquires the position information of the vehicle <NUM> via the position information processing unit <NUM> when the distribution connection area detection unit <NUM> detects entry/exit to/from the distribution connection area <NUM>. Here, it is assumed that the vehicle <NUM> advances from the inside of the distribution connection area of "intersection A" in <FIG> toward "intersection B" and moves out of the distribution connection area of "intersection A. " Here, the distribution ranges and distribution connection areas of intersection A and intersection B are independent and do not overlap.

The in-vehicle device <NUM> detects movement from the inside of the distribution connection area corresponding to "intersection A" to the outside through the distribution connection area detection unit <NUM> and acquires position information of the vehicle <NUM> from the vehicle <NUM> via the position information processing unit <NUM>.

At this time, the in-vehicle device <NUM> acquires position information of "outside the distribution range of intersection A and outside the distribution connection area," notifies the server <NUM> of the position information by the above-described method, and waits for a response. The control unit <NUM> of the server <NUM> also causes the topic management unit <NUM> to select a topic included in the position information "outside the distribution range of the intersection A and outside the distribution connection area" by the method described above.

Here, any topic identifier is not selected, and the control unit <NUM> notifies the in-vehicle device <NUM> of selected "no topic identifier" and "information on next distribution connection area that the vehicle may enter/exit" via the communication unit <NUM>.

A dedicated message may be provided for absence of a selected topic identifier and may represent that a topic to be notified is empty. Distribution connection area information of intersection A and intersection B corresponds to the next distribution connection area that the vehicle may enter/exit.

In step S503, the control unit <NUM> of the in-vehicle device <NUM> receives information representing that there is no corresponding topic identifier and information on the next distribution connection area that the vehicle may enter/exit via the communication unit <NUM>. Processing proceeds, and in step S505, the control unit <NUM> performs comparison with "Intersection_00A" for which subscription registration processing has been previously performed. Processing proceeds, and in step S508, the control unit <NUM> determines that there are no more topics for which subscription registration has been completed.

In step S509, the control unit <NUM> performs subscription cancellation processing on corresponding topics. Specific processing will be described using the message format example shown in <FIG>. At the time of subscription, the message processing unit <NUM> sets "Unsubscribe" to the "message type" of the message using the format shown in <FIG>.

Subsequently, the message processing unit <NUM> sets a topic name "Intersection_00A" to be unregistered to the "message length," "topic length," and "topic" of the message to generate the message.

The control unit <NUM> transmits the message generated by the message processing unit <NUM> to the server <NUM> via the communication unit <NUM> as a subscription registration cancellation request. This processing is an example of a transmission step of transmitting a subscription registration request and a subscription cancellation request to the server <NUM> according to the comparison result of the comparison step.

The control unit <NUM> of the server <NUM> receives the subscription registration cancellation request from the in-vehicle device <NUM> via the communication unit <NUM>. Subsequently, the control unit <NUM> cancels subscription registration by deleting, from the storage unit <NUM>, the IP address, port number, and the like of the device that is a registration cancellation request source from a list of subscription registration information devices related to the requested topic through the broker unit <NUM>.

Here, it is assumed that the vehicle <NUM> has moved from the outside to the inside of the distribution connection area of "intersection B" in <FIG>. The in-vehicle device <NUM> detects that the vehicle has moved from the outside to the inside of the distribution connection area corresponding to "intersection B" from the information on the next distribution connection area that the vehicle may enter/exit, received by the distribution connection area detection unit <NUM>.

The in-vehicle device <NUM> acquires the position information of "intersection B position information" through the method described above. In step F712, the control unit <NUM> notifies the server <NUM> of the acquired position information "intersection B position information" through the method described above and waits for a response. In step F713, the control unit <NUM> of the server <NUM> causes the topic management unit <NUM> to select a topic having a distribution range and a distribution connection area in which "intersection B position information" is included through the method described above.

Here, in step F714, the topic management unit <NUM> selects "Intersection_00B" as a topic identifier. In step F715, the control unit <NUM> notifies the in-vehicle device <NUM> of "selected topic," "distribution connection area information corresponding to the topic," and "information on the next distribution connection area that the vehicle may enter/exit" via the communication unit <NUM>.

In step F716, when the topic "Intersection_00B" is received via the communication unit <NUM>, the control unit <NUM> performs subscription registration processing on the topic "Intersection_00B" in processing at the time of subscription described above. Thereafter, in steps F717 and F718, the in-vehicle device <NUM> acquires information near intersection B <NUM> which is a travel range of the vehicle <NUM>.

In step S506, the control unit <NUM> of the in-vehicle device <NUM> performs different processing depending on topics to be notified. For example, in a case where a distribution range 1002A of "intersection A" and a distribution range 1002B of "intersection B" overlap, as shown in <FIG>, if the vehicle <NUM> passes through a route <NUM>, processing as described above is performed.

The vehicle <NUM> passes through a route <NUM> when it moves from a state in which it has already entered the distribution range 1002A of "intersection A" to the distribution connection area 1003B of "intersection B. " The in-vehicle device <NUM> detects movement from the outside to the inside of the distribution connection area 1003B through the distribution connection area detection unit <NUM>.

The in-vehicle device <NUM> acquires both "intersection A position information" and "intersection B position information" through the method described above, notifies the server <NUM> of the position information, and waits for a response.

The control unit <NUM> of the server <NUM> also selects topics included in both the "intersection A position information" and the "intersection B position information" by the topic management unit <NUM> through the method described above. That is, the in-vehicle device <NUM> is notified of the two topics "Intersection_00A" and "Intersection_00B" in a state in which the topic "Intersection_00A" has been registered.

In this case, subscription registration processing for "Intersection_00A" is not performed, and only subscription registration processing for "Intersection_00B" is performed.

Further, the vehicle <NUM> passes through a route <NUM> when it moves from a state in which it has entered a distribution connection area 1003A of "intersection A" and a distribution range 1002B of "intersection B" to the distribution range 1002B of "intersection B.

The in-vehicle device <NUM> detects movement from the inside to the outside of the distribution connection area 1003A through the distribution connection area detection unit <NUM>. The in-vehicle device <NUM> acquires the position information "intersection B position information" through the method described above, notifies the server <NUM> of the position information, and waits for a response.

In the control unit <NUM> of the server <NUM> as well, the topic management unit <NUM> selects a topic included in the "intersection B position information" by the method described above. That is, the in-vehicle device <NUM> is notified of the topic "Intersection_00B" in a state in which both the topics "Intersection_00A" and "Intersection_00B" have been registered.

In this case, it is determined that "Intersection_00A" no longer has any subscribing topics, and the subscribing cancellation process for that topic is performed. Further, since the topic "Intersection_00B" has already been registered, the subscription registration process is not performed.

Further, the vehicle <NUM> passes through a route <NUM> when it moves from a state in which it has entered the distribution connection area 1003B of "intersection B" to a position that is not included in any distribution range or distribution connection area.

The in-vehicle device <NUM> detects movement from the inside to the outside of the distribution connection area 1003B through the distribution connection area detection unit <NUM>. The in-vehicle device <NUM> acquires position information of "outside the distribution range of the intersection B and outside the distribution connection area" through the method described above, notifies the server <NUM> of the position information, and waits for a response.

The control unit <NUM> of the server <NUM> also selects absence of corresponding topics by the topic management unit <NUM> through the method described above. That is, the in-vehicle device <NUM> is notified that there is no corresponding topics in a state in which the topic "Intersection_00B" has been registered. In this case, "Intersection_00B" is determined to have no longer subscription-registered topic, and subscription registration cancellation processing for the corresponding topics is performed.

Next, behaviors of the in-vehicle device <NUM> and the server <NUM> according to change in distribution connection area information will be described. Topic identifiers, target position information, distribution range information, and distribution connection area information managed by the topic management unit <NUM> of the server <NUM> may be newly created, updated, or deleted at arbitrary timing.

When information of topic identifiers and distribution ranges has been newly created, the control unit <NUM> of the server <NUM> notifies the in-vehicle devices <NUM> of the vehicles <NUM> present near a target distribution range of information related to creation of new topic identifiers via the communication unit <NUM>.

Upon receiving the notification via the communication unit <NUM> of the in-vehicle device <NUM>, the control unit <NUM> acquires the current position from the position information processing unit <NUM>, notifies the server <NUM> of the current position through the method described above, and waits for a response. Subsequent processing is the same as the above-described processing, and thus description thereof is omitted.

The in-vehicle device <NUM> may determine whether or not subscription registration of a notified new topic identifier is necessary. Specifically, if the control unit <NUM> of the in-vehicle device <NUM> determines that the current position is within the distribution range and the distribution connection area of the topic identifier, subscription registration of the topic is executed.

If the current position is outside the distribution range and the distribution connection area of the topic identifier, it is stored in the storage unit <NUM> as the next distribution connection area that the vehicle may enter/exit. Further, when information related to an existing topic identifier has been updated, the same processing as that for new creation described above is performed.

Further, when an existing topic identifier has been deleted, the control unit <NUM> of the server <NUM> notifies all subscribers that have registered the target topic identifier that the topic identifier has been deleted via the communication unit <NUM>. Upon receiving the notification via the communication unit <NUM> of the in-vehicle device <NUM>, the control unit <NUM> executes subscription registration cancellation processing for the deleted topic identifier.

As described above, the in-vehicle device operates as a subscriber. The in-vehicle device detects entry/exit to/from a distribution range or a distribution connection area based on position information of a vehicle in which it is mounted. The in-vehicle device notifies the server having the topic management function of the position information of the vehicle, and causes the topic management function to select an optimal topic on the basis of the position information.

According to this selection processing, the in-vehicle device can receive only an optimal message from among various messages that are published and distributed. Accordingly, communication of position information between the in-vehicle device and the server can be minimized, and processing and a bandwidth required for communication therebetween can be reduced.

In addition, selection of topics to be subscription-registered, sorting out of published messages, and the like are not required on the in-vehicle device side, and thus it is possible to notify vehicle drivers of optimal traffic information without delay.

Processing based on the position of a vehicle while it is traveling has been described in the first embodiment. In a second embodiment, an example in which the present invention is applied to a destination of a vehicle will be described.

A system configuration in the second embodiment will be described using <FIG> is a diagram showing a schematic configuration of a system according to the second embodiment of the present invention.

<FIG> shows a state in which a vehicle <NUM> is traveling toward a destination <NUM>. In the second embodiment, position information of the vehicle <NUM> is information indicating the position of the destination <NUM> of the vehicle <NUM>. A camera <NUM> is installed on a road around the destination <NUM> and captures an image of the surrounding road.

Configurations of an in-vehicle device <NUM>, the camera <NUM>, and a server <NUM> shown in <FIG> are the same as those of the in-vehicle device <NUM>, the camera <NUM>, and the server <NUM> of the first embodiment. Therefore, the second embodiment will be described using the configurations shown in <FIG>.

Processing of the system of the second embodiment will be described below with reference to the flowcharts shown in <FIG> and <FIG> and the operation sequence diagram shown in <FIG>. <FIG> is a flowchart showing processing executed by the in-vehicle device <NUM>.

The in-vehicle device <NUM>, the camera <NUM>, and the server <NUM> are in a state in which they can communicate on the same network through a base station <NUM>. In steps F1401 to F1403 of <FIG>, the in-vehicle device <NUM>, the camera <NUM>, and the server <NUM> perform connection processing according to a protocol that realizes the publishing/subscribing method.

Examples of a protocol of the publishing/subscribing method include MQ Telementary Transport (MQTT) and Robot Operating System (ROS). Any one may be used in the second embodiment.

In step S1201, the control unit <NUM> of the in-vehicle device <NUM> acquires destination information from the vehicle <NUM> via a car navigation device or the like of the vehicle <NUM> equipped with the in-vehicle device <NUM> through the position information processing unit <NUM>.

Here, it is assumed that the vehicle <NUM> is traveling toward the destination <NUM> in <FIG>. Although destination information is originally composed of complicated data such as GNSS data, the destination information of the destination <NUM> is represented as "point A" here for ease of understanding.

In steps S1202 and F1404, the control unit <NUM> notifies the server <NUM> of the acquired destination information "point A" via the communication unit <NUM> and waits for a response from the server <NUM>.

In step S1301, the control unit <NUM> of the server <NUM> receives the destination information "point A" of the vehicle <NUM> from the in-vehicle device <NUM> via the communication unit <NUM>. Subsequently, in steps S1302 and F1405, the control unit <NUM> causes the topic management unit <NUM> to select a topic having a distribution range in which "point A information" is included.

Since the topic selection method is the same as the first embodiment, description thereof is omitted here. Here, it is assumed that a topic related to "point A" is "Intersection_00A. " In steps S1303 and F1406, the control unit <NUM> notifies the in-vehicle device <NUM> of the selected topic via the communication unit <NUM>.

In steps S1203 and F1407, the control unit <NUM> of the in-vehicle device <NUM> receives the topic "Intersection_00A" via the communication unit <NUM>. In steps S1204 and F1408, the control unit <NUM> causes the message processing unit <NUM> to make a subscription registration request for the server <NUM> using the received topic.

Since the topic registration method in the in-vehicle device <NUM> and server <NUM> is the same as in the first embodiment, description thereof is omitted here. Meanwhile, the camera <NUM> installed on the road captures an image of surrounding roads including the destination <NUM>. As described above, the camera <NUM> has the video analysis unit <NUM> that analyzes captured video data and analyzes captured data using this function.

Here, it is assumed that a traffic jam has occurred around the destination <NUM>. The camera <NUM> analyzes captured data with the video analysis unit <NUM> and recognizes that a traffic jam has occurred around the destination <NUM>.

In step F1409, the control unit <NUM> of the camera <NUM> causes the message processing unit <NUM> to form the analysis result into a message in a publishable distribution format and sends the message to the server <NUM> via the communication unit <NUM>. Since a specific method of sending a publishing distribution message is the same as in the first embodiment, description thereof is omitted here.

Thereafter, the method for the in-vehicle device <NUM> to receive the publishing distribution message of the camera <NUM> via the server <NUM> is the same as in the first embodiment, and thus description thereof is omitted here. In steps S1205 and F1410, the in-vehicle device <NUM> ascertains that the traffic jam has occurred near the destination <NUM> by receiving a published message issued by the camera <NUM>.

Although the in-vehicle device <NUM> performs subscription registration on the basis of destination information in the second embodiment, along with this, subscription registration of a communication method provided by the communication unit <NUM> of the in-vehicle device <NUM> is conceivable.

For example, it is considered a case where the communication method provided by the communication unit <NUM> is a communication method capable of large-capacity communication. In this case, the in-vehicle device <NUM> can directly receive video data of the camera <NUM> by receiving publishing notification of the IP address, URL, and the like of the camera <NUM> from the camera <NUM>.

As described above, according to the present invention, the in-vehicle device mounted on a vehicle operates as a subscriber. The in-vehicle device notifies a server having a broker function of the position information of the vehicle in which it is mounted. The in-vehicle device can always receive an optimal published message by causing the broker function of the server to select an optimal topic on the basis of the position information.

Therefore, according to the present invention, selection of topics to be subscribed, sorting out of published messages, and the like are not required on the in-vehicle device side, and thus it is possible to notify vehicle drivers of optimal traffic information without delay.

Further, according to the present invention, position information and topics can be notified at an appropriate communication frequency between the in-vehicle device and the server. For this reason, an optimal topic can always be selected with a small processing load, and thus it is possible to obtain optimal road information that matches driving conditions of a host vehicle to support perception, determination and operation of a driver more faithfully.

Meanwhile, the movable apparatus is not limited to vehicles such as automobiles and can be in any form as long as it can be moved by being driven by a mobile unit, such as ships, trains, drones, AGVs, and robots.

In addition, as a part or the whole of the control according to the embodiments, a computer program realizing the function of the embodiments described above may be supplied to the control device through a network or various storage media. Then, a computer (or a CPU, an MPU, or the like) of the control device may be configured to read and execute the program. In such a case, the program and the storage medium storing the program configure the present invention.

Claim 1:
A control device (<NUM>) mountable on a movable apparatus (<NUM>), comprising at least one processor or circuit configured to function as:
a position information acquisition unit (<NUM>) configured to acquire position information of the movable apparatus (<NUM>), wherein the position information of the movable apparatus (<NUM>) acquired by the position information acquisition unit (<NUM>) is position information of a current position of the movable apparatus (<NUM>) or position information of a destination of the movable apparatus (<NUM>);
a position information notification unit (<NUM>) configured to notify an information processing device (<NUM>) of the position information acquired by the position information acquisition unit (<NUM>);
a distribution connection area acquisition unit (<NUM>) configured to acquire, from the information processing device (<NUM>), distribution connection area information corresponding to the position information notified by the position information notification unit (<NUM>), wherein the distribution connection area information is information indicating a connection area of a distribution range, the distribution range indicates a distribution range of information associated with a topic name, the connection area corresponds to a communication area of a base station (<NUM>), and the distribution connection area corresponds to an area provided such that the movable apparatus (<NUM>) receives distribution of information before reaching the distribution range in consideration of communication and processing delays;
a transmission unit (<NUM>, <NUM>) configured to transmit any one of a subscription registration request and a subscription cancellation request to the information processing device (<NUM>) on the basis of an area indicated by the distribution connection area information acquired by the distribution connection area acquisition unit (<NUM>) and a position indicated by the position information acquired by the position information acquisition unit (<NUM>); and
a reception unit (<NUM>) configured to receive a published message transmitted from the information processing device (<NUM>) in response to the request transmitted by the transmission unit (<NUM>, <NUM>).