WO2019097623A1 - 通信制御装置、通信制御方法及び通信制御プログラム - Google Patents

通信制御装置、通信制御方法及び通信制御プログラム Download PDF

Info

Publication number
WO2019097623A1
WO2019097623A1 PCT/JP2017/041240 JP2017041240W WO2019097623A1 WO 2019097623 A1 WO2019097623 A1 WO 2019097623A1 JP 2017041240 W JP2017041240 W JP 2017041240W WO 2019097623 A1 WO2019097623 A1 WO 2019097623A1
Authority
WO
WIPO (PCT)
Prior art keywords
communication
application program
unit
timing
distance
Prior art date
Application number
PCT/JP2017/041240
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 PCT/JP2017/041240 priority Critical patent/WO2019097623A1/ja
Priority to CN201780096692.6A priority patent/CN111344758B/zh
Priority to JP2019554108A priority patent/JP6641073B2/ja
Priority to DE112017008085.1T priority patent/DE112017008085B4/de
Priority to US16/647,849 priority patent/US20200225052A1/en
Publication of WO2019097623A1 publication Critical patent/WO2019097623A1/ja

Links

Images

Classifications

    • GPHYSICS
    • G01MEASURING; TESTING
    • G01CMEASURING DISTANCES, LEVELS OR BEARINGS; SURVEYING; NAVIGATION; GYROSCOPIC INSTRUMENTS; PHOTOGRAMMETRY OR VIDEOGRAMMETRY
    • G01C21/00Navigation; Navigational instruments not provided for in groups G01C1/00 - G01C19/00
    • G01C21/26Navigation; Navigational instruments not provided for in groups G01C1/00 - G01C19/00 specially adapted for navigation in a road network
    • G01C21/34Route searching; Route guidance
    • G01C21/3453Special cost functions, i.e. other than distance or default speed limit of road segments
    • G01C21/3461Preferred or disfavoured areas, e.g. dangerous zones, toll or emission zones, intersections, manoeuvre types, segments such as motorways, toll roads, ferries
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F9/00Arrangements for program control, e.g. control units
    • G06F9/06Arrangements for program control, e.g. control units using stored programs, i.e. using an internal store of processing equipment to receive or retain programs
    • G06F9/46Multiprogramming arrangements
    • G06F9/48Program initiating; Program switching, e.g. by interrupt
    • G06F9/4806Task transfer initiation or dispatching
    • GPHYSICS
    • G01MEASURING; TESTING
    • G01CMEASURING DISTANCES, LEVELS OR BEARINGS; SURVEYING; NAVIGATION; GYROSCOPIC INSTRUMENTS; PHOTOGRAMMETRY OR VIDEOGRAMMETRY
    • G01C21/00Navigation; Navigational instruments not provided for in groups G01C1/00 - G01C19/00
    • G01C21/26Navigation; Navigational instruments not provided for in groups G01C1/00 - G01C19/00 specially adapted for navigation in a road network
    • G01C21/34Route searching; Route guidance
    • G01C21/3453Special cost functions, i.e. other than distance or default speed limit of road segments
    • G01C21/3492Special cost functions, i.e. other than distance or default speed limit of road segments employing speed data or traffic data, e.g. real-time or historical
    • GPHYSICS
    • G01MEASURING; TESTING
    • G01CMEASURING DISTANCES, LEVELS OR BEARINGS; SURVEYING; NAVIGATION; GYROSCOPIC INSTRUMENTS; PHOTOGRAMMETRY OR VIDEOGRAMMETRY
    • G01C21/00Navigation; Navigational instruments not provided for in groups G01C1/00 - G01C19/00
    • G01C21/26Navigation; Navigational instruments not provided for in groups G01C1/00 - G01C19/00 specially adapted for navigation in a road network
    • G01C21/34Route searching; Route guidance
    • G01C21/36Input/output arrangements for on-board computers
    • G01C21/3605Destination input or retrieval
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F9/00Arrangements for program control, e.g. control units
    • G06F9/06Arrangements for program control, e.g. control units using stored programs, i.e. using an internal store of processing equipment to receive or retain programs
    • G06F9/46Multiprogramming arrangements
    • G06F9/54Interprogram communication
    • G06F9/541Interprogram communication via adapters, e.g. between incompatible applications
    • GPHYSICS
    • G08SIGNALLING
    • G08GTRAFFIC CONTROL SYSTEMS
    • G08G1/00Traffic control systems for road vehicles
    • G08G1/09Arrangements for giving variable traffic instructions
    • 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
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F2209/00Indexing scheme relating to G06F9/00
    • G06F2209/48Indexing scheme relating to G06F9/48
    • G06F2209/483Multiproc
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F2209/00Indexing scheme relating to G06F9/00
    • G06F2209/50Indexing scheme relating to G06F9/50
    • G06F2209/502Proximity

Definitions

  • the present invention relates to a communication control device, a communication control method, and a communication control program.
  • the communication control device is installed in a server. Further, according to Patent Document 1, when the mobile communication device mounted on a mobile object such as a car starts communication, the mobile communication device transmits information such as the current position of the mobile object, a destination, and a route to the communication control device. Send. Further, the communication control apparatus acquires, from the content server, a point at which the content data is to be used and a data size of the content data. Furthermore, the communication control device determines the communication schedule taking into consideration the incommunicable section such as the tunnel so that the mobile communication device completes data reception before the mobile body reaches the point where the content data is to be delivered. Also, the communication control apparatus transmits the determined communication schedule to the mobile communication apparatus. Then, the mobile communication device receives the content data from the content server in accordance with the received communication schedule. Thus, the mobile receives content data to be used at a specific point before reaching the point.
  • Patent Document 2 proposes a method of determining an incommunicable area such as a tunnel or the like on a map and acquiring necessary data in the area in advance before intruding into the incommunicable area. Further, Patent Document 2 proposes a line switching method that preferentially uses a high-speed communication line if a high-speed communication line is available.
  • a conventional communication control device determines the communication schedule of a plurality of mobile units when installed in a content server. Therefore, in the conventional method, there is a problem that an expensive server device that can determine the communication schedule of many mobiles at high speed is required.
  • the change in compression rate is, for example, a change in rate such as MPEG.
  • the communication control apparatus is installed on a moving object, it is necessary to reduce the image quality and sound quality to reduce the total amount of transmission data (that is, to increase the compression rate). Then, the communication control device installed in the moving object needs to complete the data download before reaching the section where communication can not be performed.
  • functions such as changing the compression ratio of data differ depending on the application (how much compression can be made, whether there is a compression function in the first place, etc.), it is necessary to implement communication for speeding up each application. .
  • the main object of the present invention is to solve such problems. More specifically, the main object of the present invention is to eliminate the need for communication control for each application when the communication control apparatus is mounted on a mobile unit.
  • the communication control device is A communication control apparatus mounted on a mobile unit in which a plurality of application programs for communicating with an external apparatus are implemented, Each application program is selected for each application program based on a communication distance period, which is a distance period when each application program communicates with the external device, defined for each application program, and a movement route of the moving object.
  • a scheduling unit that schedules communication timing for communicating with an external device at a position on the movement route; For each application program, it is determined whether or not the mobile unit has reached the position of communication timing, and when the mobile unit reaches the position of communication timing for any of the application programs, communication timing to the corresponding application program is determined. And a timing processor for notifying that has arrived.
  • the communication control apparatus mounted on the mobile performs communication control of a plurality of applications, communication control for each application can be eliminated.
  • FIG. 1 is a diagram showing an example of configuration of a system in which a communication control apparatus according to a first embodiment operates.
  • FIG. 2 shows an example of the internal configuration of a mobile unit according to the first embodiment.
  • FIG. 2 is a diagram showing an example of the hardware configuration of the communication control apparatus according to the first embodiment.
  • FIG. 1 is a diagram showing an example of a functional configuration of a communication control apparatus according to a first embodiment.
  • FIG. 2 is a view showing an example of the structure of a database of a route storage unit according to the first embodiment.
  • FIG. 2 is a diagram showing an example of a database structure of a communication request storage unit according to the first embodiment.
  • FIG. 2 is a diagram showing an example of a database structure of a schedule storage unit according to the first embodiment.
  • FIG. 2 is a view showing an example of the database structure of a position information storage unit according to the first embodiment.
  • FIG. 5 is a diagram showing an example data structure of communication timing notification according to the first embodiment.
  • 6 is a flowchart showing an operation example of the in-vehicle LAN communication unit according to the first embodiment. 6 is a flowchart showing an operation example of the communication request registration unit according to the first embodiment. 6 is a flowchart showing an operation example of a scheduling unit according to the first embodiment. 6 is a flowchart showing an operation example of the timing processing unit according to the first embodiment. 6 is a flowchart showing an operation example of the timing processing unit according to the first embodiment. 6 is a flowchart showing an operation example of the route registration unit according to the first embodiment.
  • FIG. 6 is a flowchart showing details of processing of step S1207 according to the first embodiment.
  • 6 is a flowchart showing details of processing of step S1207 according to the first embodiment.
  • 6 is a flowchart showing details of the process of step S1208 according to the first embodiment.
  • FIG. 7 is a view showing an example of the database structure of a schedule storage unit according to the second embodiment.
  • 10 is a flowchart showing an operation example of the timing processing unit according to the second embodiment.
  • 10 is a flowchart showing an operation example of the timing processing unit according to the second embodiment.
  • 10 is a flowchart showing an operation example of a scheduling unit according to the second embodiment.
  • 10 is a flowchart showing an operation example of a scheduling unit according to the second embodiment.
  • FIG. 15 is a flowchart showing details of the process of step S1915 according to the second embodiment.
  • 15 is a flowchart showing details of the process of step S1915 according to the second embodiment.
  • FIG. 2 shows an example of a movement route according to the first embodiment.
  • FIG. 2 is a diagram showing an outline of the operation of the communication control apparatus according to the first embodiment.
  • FIG. 8 is a diagram showing an outline of the operation of the communication control apparatus according to the second embodiment.
  • FIG. 7 shows an example of a movement route according to the second embodiment.
  • FIG. 1 is a system configuration diagram showing an entire system in which a communication control apparatus according to the present embodiment operates.
  • a content server 1 is a server device that transmits information related to the position of a mobile according to a request from the mobile.
  • the moving bodies 2a to 2c are moving bodies such as a car moving according to a predetermined travel route. In addition, when it is not necessary to distinguish mobiles 2a to 2c, it is simply referred to as mobile 2.
  • the public network 3 is an existing public communication network configured by a mobile phone network and the Internet.
  • the travel routes 4a to 4c are travel routes to the destination determined when the moving objects 2a to 2c start moving at the departure point.
  • the departure places 5a to 5c are departure places of the moving bodies 2a to 2c.
  • the destinations 6a to 6c are destinations of the moving objects 2a to 2c.
  • FIG. 2 is a block diagram which shows the apparatus structure inside the mobile body 2 in which the communication control apparatus which concerns on this Embodiment operate
  • the communication control device 7 provides a car navigation device or an RSE (rear seat entertainment) device with data acquired by communication with the content server 1.
  • the operations performed by the communication control device 7 correspond to a communication control method and a communication control program.
  • the car navigation device 8 grasps the current position by GPS (Global Positioning System) and determines the traveling route of the mobile using map information.
  • the RSE device 9 is an entertainment device installed in the rear seat and providing services such as providing information to the rear seat occupants.
  • an application operates.
  • applications other than these may operate. That is, a plurality of applications are mounted on the mobile unit 2.
  • the in-vehicle LAN (Local Area Network) 10 is a LAN that realizes communication between various devices of the mobile units 2a to 2c.
  • the wireless communication device 11 is used for communication between devices connected to the content server 1 and the in-vehicle LAN 10 via the public network 3 using a 3G line or an LTE (registered trademark) line.
  • FIG. 3 is a hardware configuration diagram of the communication control device 7 according to the present embodiment.
  • a CPU 301 is a processor that processes the operation of the communication control device 7 by software.
  • a ROM (Read Only Memory) 302 is a storage device in which software of the communication control device 7 is stored.
  • a random access memory (RAM) 303 is a storage device that loads software operating on the CPU 301 from the ROM 302.
  • the ROM 302 stores programs for realizing the functions of a route registration unit 401, an on-vehicle LAN communication unit 402, a schedule unit 403, a timing processing unit 404, and a communication request registration unit 405 described later. These programs are loaded from the ROM 302 to the RAM 303.
  • the processor 901 executes these programs to operate the route registration unit 401, the on-vehicle LAN communication unit 402, the schedule unit 403, the timing processing unit 404, and the communication request registration unit 405, which will be described later.
  • the in-vehicle LAN interface 304 is a communication interface for communicating with the car navigation device 8 or the RSE device 9 via the in-vehicle LAN 10.
  • the traveling route of the mobile unit 2 on which the communication control device 7 is mounted is the route shown in FIG.
  • the application 1 and the application 2 are mounted on the mobile unit 2.
  • the traveling path of the mobile unit 2 includes a tunnel. In the tunnel, each application implemented in the mobile unit 2 can not communicate with an external device such as the content server 1 or the like.
  • the communication control device 7 adjusts the communication timing of each application so that communication of the tunnel (L3) portion is performed in the previous L1 to L2 Do.
  • the application 1 acquires data on the current position from the Internet every time the mobile unit 2 advances 500 m.
  • the application 2 acquires data on the current position from the Internet every time the mobile unit 2 travels 5 km. A distance cycle for these applications to obtain data on the current position is called a communication distance cycle.
  • the communication control device 7 obtains the information of the traveling route of the moving body 2, the communication control device 7 confirms the presence or absence of the communication disabled section.
  • the communication control device 7 finds L3 in FIG. 26, the communication control device 7 corrects the communication distance period of the communicable section before L3. More specifically, in the first embodiment, the communication control device 7 corrects the communication distance period of L2 to (distance of L2 / (distance of L2 + distance of L3)) ⁇ communication distance period of application. Further, in the second embodiment, the communication control device 7 also sets the communication distance period of L3 to L2 in parallel with the original communication distance period of L2. However, when L2 is short, the communication control device 7 further goes back and corrects the period of the section of L1 to L2.
  • the communication control device 7 generates a position to be communicated by each application from the point A along the information of the travel route.
  • the communication control device 7 periodically receives the current position of the mobile unit 2 from the GPS (for example, every one second). For this reason, the communication control device 7 calculates, for each application, the movement distance from the previous communication every second (calculation based on the “accumulated movement distance”).
  • the communication control device 7 notifies the application that it is the communication timing.
  • the application acquires data of the current position from the Internet.
  • the communication control device 7 transmits the communication timing to the application at the period of the distance corrected in “B. Adjustment of timing”.
  • the application gets data ahead of time. That is, the application acquires data associated with the previous position where the mobile unit 2 has not reached yet. In the example of FIG. 27, if the tunnel does not exist, the application acquires data of P1 when the mobile unit 2 reaches the position of P1. In addition, the application acquires data of P2 when the mobile unit 2 reaches the position of P2. Similarly, the application acquires data of P3 when the mobile unit 2 reaches the position of P3. At communication timing in consideration of the tunnel, the application acquires data of P1 when the mobile unit 2 reaches the position of p1.
  • the application acquires data of P2 when the mobile unit 2 reaches the position of p2. Furthermore, the application acquires data of P3 when the mobile unit 2 reaches the position of p3.
  • the communication control device 7 corrects the communication timing so as to acquire data associated with the previous position not reached by the mobile unit 2 in consideration of the communication disabled section. Then, the communication control device 7 notifies each application of data to be acquired and acquisition positions (p 1 to p 12 ) of each data, based on the corrected communication timing.
  • the application acquires data of the previous position from the Internet at the position notified from the communication control device 7.
  • FIG. 4 shows an example of the functional configuration of the communication control device 7.
  • the route registration unit 401 registers the route information received from the car navigation device 8 in the route storage unit 411. Further, the route registration unit 401 calls the schedule unit 403 to generate a schedule.
  • the in-vehicle LAN communication unit 402 communicates with the car navigation device 8 and the RSE device 9 via the in-vehicle LAN 10 using the in-vehicle LAN interface 304.
  • the scheduling unit 403 determines the incommunicable section of the travel route. Further, the scheduling unit 403 determines the communication distance cycle that has been in the state of the traveling route, and registers the determined communication distance cycle in the schedule storage unit 413. The operation performed by the schedule unit 403 is called schedule processing.
  • the timing processing unit 404 notifies the car navigation device 8 and the RSE device 9 of the communication timing via the in-vehicle LAN communication unit 402.
  • the operation performed by the timing processing unit 404 is called timing processing.
  • the communication request registration unit 405 registers the communication request sent by the car navigation device 8 and the RSE device 9 in the communication request storage unit 412. Also, the communication request registration unit 405 requests the schedule unit 403 to generate a schedule.
  • the route storage unit 411 stores the traveling route of the mobile received from the car navigation device 8 via the on-vehicle LAN communication unit 402.
  • the communication request storage unit 412 stores communication timing requests from the car navigation device 8 and the RSE device 9.
  • the schedule storage unit 413 stores the communication distance cycle determined by the scheduling unit 403.
  • the position information storage unit 414 stores current position related information received from the car navigation device 8 in one second, for example.
  • the route registration unit 401, the in-vehicle LAN communication unit 402, the schedule unit 403, the timing processing unit 404, and the communication request registration unit 405 are realized by programs.
  • the functions of the route registration unit 401, the in-vehicle LAN communication unit 402, the schedule unit 403, the timing processing unit 404, and the communication request registration unit 405 are realized.
  • the path storage unit 411, the communication request storage unit 412, the schedule storage unit 413, and the position information storage unit 414 are realized by the ROM 302 or the RAM 303.
  • FIG. 5 shows an example of the structure of the database of the route storage unit 411.
  • each row shows one link which constitutes a travel route.
  • the departure place of the travel route is the start position of link number 1
  • the destination of the travel route is the end position of the last line.
  • the end point of link number 1 matches the start point of link number 2.
  • the start position and the end position indicate the positions of the head and the end of the link by longitude and latitude.
  • the start intersection flag and the end intersection flag respectively indicate whether the start position and the end position are branch points of a route such as an intersection.
  • the start point position or the end point position of the start point intersection flag or the end point intersection flag is not 0 is not a branch point.
  • the start point position or the end point position of the start point intersection flag or the end point intersection flag is 1 is a branch point.
  • the distance indicates the distance of the path between the start position and the end position.
  • the scheduled speed indicates a scheduled speed in movement from the start position to the end position.
  • the road attribute indicates the attribute of the road from the start position to the end position. Specifically, the road attribute indicates a road attribute such as a general road, an expressway, a tunnel, a huge bridge, an underground road, and the like. In addition, a road attribute can set several attributes, such as a tunnel of a general road.
  • FIG. 6 shows an example of the database structure of the communication request storage unit 412.
  • the request number is an identifier of the communication request.
  • the request source device is an identifier that uniquely indicates the device connected to the in-vehicle LAN 10 that has made the communication request. For example, an IP address is used as the request source device.
  • the application ID is an identifier that uniquely indicates the application that has made the communication request in the request source device. As an application ID, for example, a TCP or UDP port number is used.
  • the bypass consideration flag indicates whether the application requesting communication has a function to prompt the bypass operation by the data received from the content server 1.
  • the allowable correction amount indicates the correction amount that is permitted when advancing the communication corresponding to the communication request.
  • the priority is the priority of the communication request.
  • the priority is indicated by 1 to N. Here, 1 means the highest priority.
  • FIG. 7 shows an example of the database structure of the schedule storage unit 413.
  • the link number is the link number of the travel route.
  • the request number is the number of the communication request stored in the communication request storage unit 412.
  • the priority is the priority stored in the communication request storage unit 412.
  • the communication distance cycle is a value obtained by converting the communication cycle of the communication request into a movement distance.
  • the cumulative movement distance is the movement distance after the previous transmission of the communication timing to the application.
  • the remaining distance is the remaining distance to the end point position of the link. The remaining distance is valid only when the end point intersection flag of the corresponding link is 1 and the detour consideration flag of the communication request is 1, and the remaining distance is 0 otherwise.
  • the position correction coefficient and the position correction ⁇ indicate the correction value of the current position specified when the application acquires information from the content server 1 at the next communication timing.
  • the correction value is calculated by multiplying the position correction coefficient by the longitude and latitude values of the position correction ⁇ . When correction is not necessary, the position correction coefficient is zero.
  • FIG. 8 shows an example of the database structure of the position information storage unit 414.
  • the current position is current position information of the moving object measured by GPS or the like.
  • the movement distance is the movement distance (the path) of the past one second measured by the car navigation device 8.
  • the current link number indicates the link number of the link to which the current position of the mobile belongs. When the traveling route is undecided, the current link number is 0.
  • FIG. 9 shows an example data structure of communication timing notification.
  • the request source device is an identifier indicating a device that has made a communication request to the communication control device 7.
  • an IP address is used as an identifier of the request source device.
  • the application ID is an identifier that uniquely identifies an application that has made a communication request in the request source device.
  • a TCP port number is used as the application ID.
  • the data acquisition position is position information to be designated when the application requests the content server 1 to transmit content data.
  • the communication request transmitted by the car navigation device 8 is received by the in-vehicle LAN interface 304, and processed by the in-vehicle LAN communication unit 402 according to the flowchart of FIG.
  • the in-vehicle LAN communication unit 402 confirms the reception event of the in-vehicle LAN interface 304 in step S1001. If it is confirmed in step S1002 that there has been reception, the in-vehicle LAN communication unit 402 confirms the type of received data in step S1005.
  • in-vehicle LAN communication unit 402 transmits a communication request to communication request registration unit 405 in step S1007.
  • the processing of the in-vehicle LAN communication unit 402 ends.
  • the communication request is processed by the communication request registration unit 405 according to the flowchart of FIG.
  • the communication request registration unit 405 first registers the communication request in the communication request storage unit 412 in step S1101.
  • the communication request registration unit 405 designates the communication request number registered in the communication request storage unit 412 and calls the schedule unit 403.
  • the communication request registration unit 405 sorts the data of the schedule storage unit 413 in step S1103.
  • the communication request registration unit 405 first sorts the data of the schedule storage unit 413 by the link number.
  • the communication request registration unit 405 sorts the data of the schedule storage unit 413 in descending order of priority for each data of the same link number.
  • the process of the communication request registration unit 405 ends.
  • step S1201 the scheduling unit 403 confirms whether a route is registered in the route storage unit 411.
  • step S1202. The scheduling unit 403 calculates the communication distance period under the default conditions when there is no route information in step S1202. Specifically, when the communication cycle is specified in 60 seconds, such as request number 1 in FIG. 6, the scheduling unit 403 assumes that the moving speed is the general speed limit of 40 km / h and the communication distance The period is calculated as 667 m. When the communication cycle is specified as a distance of 1 km as in request number 3, the scheduling unit 403 directly specifies the communication distance cycle as 1 km.
  • the scheduling unit 403 registers the communication distance cycle calculated in step S1202 using the link number 0 together with the request number.
  • the scheduling unit 403 registers the priority as the priority of the communication request, the initial value of the cumulative movement distance is 0 m, the remaining distance is 0 m, and the position correction coefficient is 0. This is the end of the processing upon reception of the communication request.
  • the car navigation device 8 makes a communication request has been described above, the same process is performed for the communication request made by the RSE device 9.
  • the car navigation device 8 starts transmission of current position related information to the communication control device 7 in a one second cycle.
  • the in-vehicle LAN communication unit 402 performs the processing according to the flowchart of FIG.
  • the in-vehicle LAN communication unit 402 confirms the reception event of the in-vehicle LAN interface 304 in step S1001. If it is confirmed in step S1002 that there has been reception, the in-vehicle LAN communication unit 402 confirms the type of received data in step S1005.
  • the in-vehicle LAN communication unit 402 transmits the current position related information to the timing processing unit 404 in step S1006.
  • the processing of the in-vehicle LAN communication unit 402 ends.
  • the timing processing unit 404 performs processing in accordance with the flowcharts of FIGS. 13 and 14. First, in step S 1300, the timing processing unit 404 sets a counter indicating the number of communication events to be communicated at this timing to zero. Next, in step S1301, the timing processing unit 404 confirms whether or not the link number matches the current link number of the current position related information in each data of the schedule storage unit 413. If the link number matches the current link number of the current position related information, the timing processing unit 404 adds the movement distance of the current position related information to the cumulative movement distance of the corresponding data in step S1302.
  • step S1310 the timing processing unit 404 checks whether the value of the counter is less than or equal to a specified value. If the value of the counter exceeds the specified value, no more communication events can be set, and the process moves to step S1317. On the other hand, when the value of the counter is less than or equal to the specified value, the timing processing unit 404 generates a communication timing notification from step S1311. First, in step S1311, the timing processing unit 404 sets the cumulative movement distance to zero. Next, in step S1312, the timing processing unit 404 confirms whether the position correction coefficient is zero.
  • the timing processing unit 404 determines the current position of the current position related information as the data acquisition position in step S1313. Then, in step S1316, the timing processing unit 404 generates the communication timing notification shown in FIG. 9 and transmits the generated communication timing notification to the in-vehicle LAN communication unit 402. If it is determined in step S1303 that the accumulated movement distance is less than the communication distance cycle, the timing processing unit 404 confirms the remaining distance in step S1304. In the above-mentioned example, since the remaining distance is 0, the process proceeds to step S1317. The timing processing unit 404 executes the above processing on all data in the schedule storage unit 413 in step S1317, and ends the processing.
  • the in-vehicle LAN communication unit 402 transmits a communication timing notification to the request source device, and ends the processing. Then, the request source device that has received the communication timing notification, that is, the car navigation device 8, acquires content data regarding the data acquisition position, that is, the current position from the content server 1.
  • the car navigation device 8 transmits route information to the communication control device 7.
  • the in-vehicle LAN communication unit 402 processes the route information according to the flowchart of FIG.
  • the in-vehicle LAN communication unit 402 confirms the reception event of the in-vehicle LAN interface 304 in step S1001. If it is confirmed in step S1002 that there has been reception, the in-vehicle LAN communication unit 402 confirms the type of received data in step S1005.
  • the in-vehicle LAN communication unit 402 transmits the route information to the route registration unit 401 in step S1008.
  • the processing of the in-vehicle LAN communication unit 402 ends.
  • the route registration unit 401 processes route information according to the flowchart of FIG. First, the route registration unit 401 stores route information in the route storage unit 411 in step S1401. Next, when there is data other than the link number 0 in the schedule storage unit 413, the route registration unit 401 deletes the corresponding data in step S1402. Next, in step S1403, the path registration unit 401 confirms whether a communication request is registered in the communication request storage unit 412. When a communication request is registered, the route registration unit 401 calls the schedule unit 403 by specifying a communication request number for each communication request in steps S1404 and S1405. Then, when the process of the schedule unit 403 is completed, the route registration unit 401 sorts the data of the schedule storage unit 413 in step S1406.
  • the path registration unit 401 first sorts the data of the schedule storage unit 413 by link number. Next, the route registration unit 401 sorts the data of the schedule storage unit 413 in descending order of priority for each data of the same link number. Thus, the processing of the path registration unit 401 ends.
  • the scheduling unit 403 executes the process according to the flowchart of FIG. First, in step S1201, the scheduling unit 403 confirms whether or not the route information is stored in the route storage unit 411. In the above-mentioned example, since the route information is stored in the route storage unit 411, the scheduling unit 403 starts the process from the beginning of the route in step S1204.
  • the scheduling unit 403 sequentially follows the road attributes of the link information of the route storage unit 411 in step S1205, and determines a continuous link string (normal link string) determined to be communicable.
  • the road attribute for determining that communication is possible may be determined in advance by the software of the communication control device 7.
  • road attributes that are determined to be communicable may be designated by a setting file or the like.
  • the scheduling unit 403 next determines a non-communicable continuous link string (non-communicable link string) in step S1206.
  • the scheduling unit 403 examines the road attribute information of the link in the same manner as the normal link string, and determines the incommunicable link string.
  • the scheduling unit 403 determines a communication cycle adjustment link string in step S1207 and determines a schedule. The details of this process will be described according to the flowcharts of FIGS. First, in step S1501, the scheduling unit 403 calculates an allowable correction distance amount from the allowable correction amount of the communication request. If the allowable correction amount of the communication request is a distance unit, the scheduling unit 403 uses the allowable correction amount as it is. If the allowable correction amount is a unit of time, the scheduling unit 403 obtains an average value of the planned speeds of the incommunicable link row, and uses a value obtained by multiplying the calculated average value by the allowable correction amount (time) as the allowable correction distance amount. Do.
  • step S ⁇ b> 1502 the scheduling unit 403 calculates the total length of the communication disabled link string from the distance of the path storage unit 411.
  • step S1503 the scheduling unit 403 compares the allowable correction distance amount with the total length of the communication impossible link string. If the total length of the communication impossible link string is longer than the allowable correction distance amount, the scheduling unit 403 corrects the total length of the communication impossible link string to the allowable correction distance amount in step S1504.
  • step S1505 the scheduling unit 403 moves the last link of the normal link sequence to the beginning of the communication cycle adjustment link sequence. That is, in the link string belonging to the normal link string, the tail link is shortened by one, and in the communication cycle adjustment link string, one link is added to the head.
  • the scheduling unit 403 calculates the total length of the communication cycle adjustment link sequence in step S1506.
  • step S1507 the scheduling unit 403 confirms whether the communication cycle of the communication request being processed is in units of time. If the communication cycle of the communication request being processed is in units of time, the scheduling unit 403 obtains the average value of the planned speeds of all the links that constitute the communication cycle adjustment link string in step S1509. Then, the scheduling unit 403 obtains the average value of the communication distance cycle by multiplying the obtained average value by the communication cycle. Then, the scheduling unit 403 uses the obtained average value as the pre-adjustment communication distance cycle.
  • the scheduling unit 403 treats the communication cycle as a pre-adjustment communication distance cycle in step S1508.
  • the scheduling unit 403 obtains the adjusted communication distance period according to the following equation.
  • step S1511 the scheduling unit 403 checks whether the adjusted communication distance cycle calculated is equal to or greater than a specified value.
  • the specified value may be fixed by the software of the communication control processing 7, or may be changed by a setting file or the like. If the post-adjustment communication distance cycle is shorter than the prescribed value, the process returns to step S1505 because it is necessary to adjust the communication timing from the link on the near side. Furthermore, the scheduling unit 403 moves the link at the end of the normal link sequence to the communication cycle adjustment link sequence, and performs readjustment. When the adjusted communication cycle becomes equal to or greater than the specified value in step S1511, the adjustment of the communication cycle ends, and the process proceeds to step S1512.
  • step S1512 the scheduling unit 403 obtains the difference between the pre-adjustment communication distance period and the post-adjustment communication distance period. Then, the scheduling unit 403 obtains the position correction ⁇ value of each link of the communication cycle adjustment link string from the value of the obtained difference. Finally, in step S1513, the schedule unit 403 registers, in the schedule storage unit 413, a schedule for a communication request under processing of each link of the communication cycle adjustment link sequence. At this time, the scheduling unit 403 sets each link number of the link belonging to the communication processing adjustment link string to the link number in FIG. Further, the scheduling unit 403 sets the request number and the priority of the communication request currently being processed in the request number and the priority.
  • the scheduling unit 403 sets the communication distance cycle after adjustment to the communication distance cycle. Further, the schedule unit 403 sets 0 m as the cumulative movement distance, sets 1 as the position correction coefficient, and sets the position correction ⁇ value of each link calculated in step S 1512 as the position correction ⁇ . In addition, when the detour consideration flag of the communication request of the request number being processed is 1, and the end point intersection flag of the corresponding link is 1, the scheduling unit 403 determines the remaining distance (distance of the corresponding link-planned speed of link x Register 1 second). On the other hand, in other cases, the scheduling unit 403 registers 0 as the remaining distance. Note that one second is a cycle in which the car navigation device 8 transmits current position related information. The above is the details of step S1207 in FIG.
  • the scheduling unit 403 registers the schedule of the normal link string in step S1208. The details of this process will be described according to the flowchart of FIG.
  • the scheduling unit 403 calculates the communication distance period from the communication period of the communication request being processed for the first link of the normal link sequence.
  • the scheduling unit 403 treats the communication cycle as it is as a communication distance cycle.
  • the scheduling unit 403 multiplies the communication cycle by the scheduled speed of the corresponding link to calculate the communication distance cycle.
  • step S1602 the scheduling unit 403 confirms the bypass consideration flag of the communication request. If the bypass consideration flag is not 0, the process proceeds to step S1603, and the scheduling unit 403 confirms the end point intersection flag of the corresponding link.
  • the scheduling unit 403 uses (distance of link ⁇ scheduled speed of link ⁇ 1 second) as the remaining distance. Note that one second is a cycle in which the car navigation device 8 transmits current position related information.
  • the scheduling unit 403 sets the value of the remaining distance to zero.
  • step S1606 the schedule unit 403 registers a schedule in the schedule storage unit 413 based on the above results. At this time, the scheduling unit 403 registers the current link number in the link number.
  • the scheduling unit 403 registers the request number of the communication request currently being processed in the request number. Further, the scheduling unit 403 registers the priority of the communication request currently being processed as the priority. Further, the scheduling unit 403 registers the communication distance cycle calculated in step S1601 as the communication distance cycle. Also, the scheduling unit 403 registers 0 m as the cumulative movement distance. Further, the scheduling unit 403 registers the remaining distance determined in step S1604 or step S1605 as the remaining distance. Further, the scheduling unit 403 registers 0 in the position correction coefficient, and registers 0 in the position correction ⁇ . The scheduling unit 403 executes the above processing for all the links in the normal link string in step S1607. The above is the details of step S1208 in FIG.
  • step S1209 and step S1210 the same processing as described above is performed on the remaining routes in step S1209 and step S1210, and the processing ends.
  • the in-vehicle LAN communication unit 402 follows the flow chart of FIG.
  • the current position related information is transmitted to the processing unit 404.
  • the timing processing unit 404 performs processing in accordance with the flowcharts of FIGS. 13 and 14. First, the timing processing unit 404 sets a counter to 0 in step S1300. Next, in step S1301, the timing processing unit 404 confirms whether the link number matches the current link number of the current position related information in each data of the schedule storage unit 413. If the link number matches the current link number of the current position related information, in step S1302, the timing processing unit 404 adds the moving distance of the current position related information to the cumulative movement distance of the data. If the cumulative movement distance after addition exceeds the communication distance cycle in step S1303, the timing processing unit 404 first adds 1 to the counter in step S1309.
  • step S1310 the timing processing unit 404 confirms whether the value of the counter is less than or equal to a specified value. If the value of the counter exceeds the specified value, the communication event can not be performed at this timing any more, and the process moves to step S1317. If the value of the counter is less than or equal to the specified value, the timing processing unit 404 executes a process of generating a communication timing notification after step S1311. First, the timing processing unit 404 sets the cumulative movement distance to 0 in step S1311, and then checks in step S1312 whether the position correction coefficient is 0 or not. If the position correction coefficient is 0, the timing processing unit 404 determines the current position of the current position related information as the data acquisition position in step S1313.
  • the timing processing unit 404 adds the value obtained by multiplying the position correction coefficient by the position correction coefficient in step S1314 to the current position information, and the timing is changed by the adjustment of the communication timing. The position before change of the communication timing position is calculated, and this is taken as the data acquisition position.
  • step S1315 the timing processing unit 404 adds 1 to the position correction coefficient of the schedule storage unit 413. Then, the timing processing unit 404 generates a communication timing notification shown in FIG. 9 in step S1316, and transmits the generated communication timing notification to the on-vehicle LAN communication unit 402. If the cumulative movement distance is less than the communication distance cycle in step S1303, the timing processing unit 404 confirms the remaining distance in step S1304.
  • the timing processing unit 404 subtracts the movement distance from the remaining distance. As a result, when the remaining distance becomes equal to or less than the communication distance period in step S1306, the distance to the next intersection becomes less than the communication request period at the next communication period, and the timing processing unit 404 makes the remaining in step S1307. Set the distance to 0. Then, the timing processing unit 404 adds 1 to the counter in step S1308, determines that the communication timing has come ahead, and shifts to step S1311. Thereafter, the processing of step S1311 and subsequent steps is performed as described above. The timing processing unit 404 executes the above processing on all data in the schedule storage unit 413 in step S1317, and ends the processing.
  • the in-vehicle LAN communication unit 402 transmits a communication timing notification to the request source device, and ends the processing.
  • the request source device that has received the communication timing notification that is, the car navigation device 8 or the RSE device 9, acquires content data regarding the data acquisition position, that is, the current position or the corrected position from the content server 1.
  • the communication control device 7 adjusts the communication for the communication disabled section to be performed in advance with respect to the application installed in the car navigation device 8 or the RSE device 9. Provide timing. Therefore, according to the present embodiment, the server does not have to perform communication control of all mobile units, and the processing of the server can be reduced. Further, in the present embodiment, the plurality of applications installed in the car navigation device 8 and the RSE device 9 obtain the adjusted communication timing for the non-communicable section by requesting the communication control device 7 to perform communication. Can. Therefore, according to the present embodiment, it is not necessary to perform communication control in consideration of the route of the mobile by each application, and the processing of each application can be reduced.
  • the correction value of the position information when the communication control device 7 requests the content server 1 for data that is, the communication timing Notify the application of the original location information before moving forward. Therefore, according to the present embodiment, even when the application requests data to the content server 1 in advance while avoiding the incommunicable section, the application can acquire the content data regarding the position of the incommunicable section. Further, in the present embodiment, the corrected communication timing is notified to the application related to the detour or route change of the mobile. More specifically, in the present embodiment, when the end point of the link is an intersection, the remaining distance is compared with the communication distance period.
  • the application can secure a sufficient processing time until the mobile body reaches the intersection.
  • the communication timing is provided by converting the time period into the movement distance also for the application in which the communication period is in the unit of time. For this reason, according to the present embodiment, in addition to the application in which the communication cycle is in units of distance, an application that processes information periodically in a time cycle can execute communication for the non-communicable section ahead of time. In addition, when the actual moving speed of the moving object becomes slower than the planned speed, the communication timing time interval becomes longer.
  • communication timing is provided by converting a time cycle to a movement distance even for an application in which the communication cycle is in a unit of time. Therefore, according to the present embodiment, communication congestion can be reduced even when there are a large number of mobile units performing the same communication due to traffic congestion in the vicinity. Further, in the present embodiment, the allowable maximum amount of correction that occurs due to the advance of the communication timing is designated for each communication request. And, in the present embodiment, the forward movement of the communication requiring the correction of the allowable maximum amount or more is not performed. For this reason, according to the present embodiment, it is possible to avoid the communication advanced so far that the application can not cope.
  • the number of communication timing notifications generated upon reception of one current position related information is designated in order of priority of communication request. For this reason, in the present embodiment, the communication request with low priority is transmitted at the next reception timing of the current position related information. Therefore, according to the present embodiment, it is possible to prevent the occurrence of congestion due to overlapping communication timings of a large number of communication requests.
  • the communication timing is generated so that the time for the communication cycle can be secured before the intersection.
  • the application may specify, for each communication request, a time to be secured before the mobile body reaches the intersection, and the communication control device 7 may compare the distance and the remaining distance for that time. In this way, the processing time of the application, which is different from the communication cycle, can be secured before the mobile body reaches the intersection.
  • the communication interval in the communication section before the communication disabled section is shortened, and the communication timing is advanced.
  • the present embodiment an example in which communication for the incommunicable section is performed in parallel to normal communication in the preceding communication section will be described.
  • the second embodiment differs from the first embodiment in the method of generating the communication timing when the communication timing is advanced before the communication disabled section.
  • the communication control device 7 reduces the communication distance cycle of P 1 to P 12 at the same rate, and acquires data in order.
  • the communication control apparatus 7 sets the communication distance period so as to communicate normally for P 1 to P 7 capable of communication. Further, in parallel, the communication control device 7 sets the communication distance cycle of P 8 to P 12 in the non-communicable section ahead.
  • information can be acquired as usual about P 1 to P 7, which are the positions where communication can be originally performed, without temporal error due to forward movement, unlike the first embodiment.
  • FIGS. 1 to 6 and 8 to 9 are the same as in the first embodiment.
  • FIG. 19 shows an example of the database structure of the schedule storage unit 413 according to the second embodiment.
  • the link number is the link number of the travel route.
  • the request number is the number of the communication request stored in the communication request storage unit 412.
  • the priority is the priority stored in the communication request storage unit 412.
  • the communication distance cycle is a value obtained by converting the communication cycle of the communication request into a movement distance.
  • the cumulative travel distance is the distance traveled by the mobile unit since the communication timing was last sent to the application.
  • the remaining distance is the remaining distance to the end point position of the link. The remaining distance is effective only when the end point intersection flag of the corresponding link is 1 and the detour consideration flag of the communication request is 1, and is 0 otherwise.
  • the communication start position is the distance from the beginning of the link to the position at which the generation of communication timing starts.
  • the position correction coefficient, the position correction constant, and the position correction ⁇ indicate a correction value of the current position specified when acquiring data from the content server 1 at the next communication timing.
  • the correction value can be calculated by adding the position correction constant to the value obtained by multiplying the position correction coefficient by the longitude and latitude values of the position correction ⁇ . In the case of no correction, the position correction coefficient is zero.
  • the scheduling unit 403 is called from the route registration unit 401, and generates a schedule from the route information. This operation will be described according to the flowcharts of FIGS. 22 and 23.
  • step S1901 the scheduling unit 403 confirms whether or not the route information is registered in the route storage unit 411. When the route information is not registered, the scheduling unit 403 calculates the communication distance period under the default condition in the case where there is no route information in step S1902. The method of calculating the communication distance cycle under the default conditions is the same as that of the first embodiment.
  • step S1903 the scheduling unit 403 registers the calculated communication distance cycle with the request number using the link number 0. The scheduling unit 403 assumes that the initial value of the cumulative movement distance is 0 m, the remaining distance is 0 m, the communication start position is 0 m, the priority is the priority of the communication request, the position correction coefficient, the position correction constant, and the position correction ⁇ sign up.
  • the scheduling unit 403 starts registration of a normal distance cycle from the leading link of the route in step S1904.
  • the scheduling unit 403 determines from the road attribute whether the link being processed is a non-communicable link. If the link being processed is not a non-communicable link, the scheduling unit 403 calculates a communication distance period from the communication period of the communication request in step S1906.
  • the scheduling unit 403 treats the communication cycle as it is as a communication distance cycle.
  • the scheduling unit 403 multiplies the communication cycle by the scheduled speed of the corresponding link to calculate the communication distance cycle.
  • step S1907 the scheduling unit 403 confirms the bypass consideration flag of the communication request. If the bypass consideration flag is not 0, the process proceeds to step S1908, and the scheduling unit 403 confirms the end point intersection flag of the corresponding link. If the end point intersection flag is not 0, the scheduling unit 403 uses (distance of link ⁇ scheduled speed of link ⁇ 1 second) as the remaining distance in step S1910. Note that one second is a cycle in which the car navigation device 8 transmits current position related information. On the other hand, when the detour consideration flag is 0 in step S1907 or the end point intersection flag is 0 in step S1908, it is not necessary to consider the detourable branch point on the route, and the scheduling unit 403 determines the remaining distance in step S1909. Set the value of to 0.
  • step S1911 the schedule unit 403 registers a schedule in the schedule storage unit 413 based on the above results.
  • the scheduling unit 403 registers the current link number in the link number.
  • the scheduling unit 403 registers the request number of the communication request currently being processed in the request number.
  • the scheduling unit 403 registers the priority of the communication request currently being processed as the priority.
  • the scheduling unit 403 registers the communication distance cycle calculated in step S1906 as the communication distance cycle.
  • the scheduling unit 403 registers 0 m as the cumulative movement distance.
  • the scheduling unit 403 registers the remaining distance determined in step S1909 or step S1910 as the remaining distance.
  • the scheduling unit 403 registers 0 in the communication start position, the position correction coefficient, the position correction constant, and the position correction ⁇ .
  • the scheduling unit 403 executes the above processing for all links of the route in step S1912.
  • the scheduling unit 403 starts registration of the adjustment schedule of the incommunicable link from step S1913.
  • the scheduling unit 403 searches for a series of non-communicable links on the route, that is, a non-communicable link string.
  • the scheduling unit 403 registers the schedule of the communication impossible link string in the schedule storage unit 413 in step S1916.
  • the scheduling unit 403 performs this process for all routes in step S1917.
  • step S1916 The details of the process of registering the schedule of the incommunicable link row executed in step S1916 will be described according to the flowcharts of FIGS. 24 and 25.
  • the scheduling unit 403 calculates an allowable correction distance amount from the allowable correction amount of the communication request. If the allowable correction amount of the communication request is a distance unit, the scheduling unit 403 uses the allowable correction amount as it is. If the allowable correction amount is in units of time, the scheduling unit 403 obtains an average value of the planned speeds of the incommunicable link string, and uses a value obtained by multiplying the calculated average value by the allowable correction amount (time) as the allowable correction distance amount. . Next, in step S2002, the scheduling unit 403 calculates the total length of the incommunicable link string from the distance of the path storage unit 411.
  • step S2003 the scheduling unit 403 compares the allowable correction distance amount with the total length of the communication impossible link string. If the total length of the communication impossible link string is longer than the allowable correction distance amount, the scheduling unit 403 corrects the total length of the communication impossible link string to the allowable correction distance amount in step S2004.
  • step S2005 the scheduling unit 403 sets, as the adjustment link, the link one link ahead of the link at the head of the incommunicable link string.
  • step S2006 the scheduling unit 403 compares the distance of the adjustment link and the total length of the communication impossible link string. If the total length of the communication impossible link string is longer, the scheduling unit 403 sets the communication start position to 0 in step S2007.
  • step S2008 the scheduling unit 403 subtracts the distance of the adjustment link from the total length of the incommunicable link string. On the other hand, if it is determined in step S2006 that the total length of the incommunicable link string is equal to or more than the total length of the incompetent link string, the schedule unit 403 calculates the difference between the total length of the incommunicable link string and the adjustment link distance Set the difference value to the communication start position.
  • step S2010 the scheduling unit 403 sets the total length of the incommunicable link string to 0. That is, the scheduling unit 403 registers that the schedule adjustment of all the sections of the incommunicable link string is completed. Then, the scheduling unit 403 calculates the communication distance period in step S2011.
  • the scheduling unit 403 uses the communication cycle as it is as the communication distance cycle.
  • the scheduling unit 403 multiplies the communication surroundings by the scheduled speed of the corresponding link to calculate the communication distance cycle.
  • the scheduling unit 403 determines position correction parameters in step S2012. Specifically, the scheduling unit 403 first calculates the latitude and longitude of the communication start position of the correction link. That is, the scheduling unit 403 calculates the latitude: Ax and the longitude: Ay which are shifted by the communication start position from the start point to the end point of the correction link. Next, the scheduling unit 403 calculates the latitude: A 'x and the longitude: A' y of the incommunicable link string corresponding to this point.
  • the scheduling unit 403 moves the length of the incommunicable link sequence from the starting point of the leading link of the incommunicable link sequence to the longitude and latitude of the obtained point.
  • the scheduling unit 403 treats the latitude and longitude of the end point of the correction link as Bx and By, respectively.
  • the scheduling unit 403 calculates the latitude B'x and the longitude B'y of the position of the incommunicable link string corresponding to the latitude Bx and the longitude By.
  • the scheduling unit 403 determines from the starting point of the leading link of the incompetent link string (total length of incommunicable link string + distance of correction link-communication start position) Calculate the latitude and longitude of the position obtained by moving the minute. Then, the scheduling unit 403 performs the following calculation.
  • N (distance of correction link ⁇ communication start position) / (communication distance period). Also, the position correction constant is 1.
  • the scheduling unit 403 registers, in the schedule storage unit 413, the adjusted schedule for the incommunicable link string in the adjustment link portion. Specifically, the scheduling unit 403 registers the link number of the adjustment link in the link number. Further, the scheduling unit 403 registers the request number and the priority of the communication request currently being processed in the request number and the priority. Further, the scheduling unit 403 registers the communication distance cycle calculated in step S2012 as the communication distance cycle. Further, the scheduling unit 403 registers 0 for the cumulative movement distance and 0 for the remaining distance. Further, the scheduling unit 403 registers the communication start position determined in step S2008 or step S2010 in the communication start position.
  • the scheduling unit 403 registers the value determined in step S2012 as the position correction coefficient, the position correction constant, and the position correction ⁇ . Then, in step S2014, the scheduling unit 403 sets, in the adjustment link, the previous link on the current adjustment link route. Next, in step S2015, the scheduling unit 403 confirms whether the total length of the incommunicable link column is not 0, that is, adjustment of the schedule has not been completed. If the adjustment of the schedule has not been completed, the scheduling unit 403 returns to step S2006, and repeats the above processing until the adjustment of the schedule is completed.
  • step S2006 to step S2013 is applied to the traveling route of FIG. 29.
  • the allowable correction distance amount is 500 m.
  • the total length of the tunnel sections L3 and L4 exceeds 500 m, the total length of the communication impossible link section is 500 m.
  • L2 is processed as a correction link. Since L2 is 400 m, it is determined in step S2006 that it is shorter than the total length of the communication disabled link section. Therefore, in step 2007, the communication start position is determined to be 0 m. Then, in step S2008, 400 m is subtracted from the total length of the communication disabled link section, so the total length of the communication disabled link section is 100 m.
  • step S2011 a communication processing cycle is calculated.
  • the position parameter is calculated in step S2012, but since the communication start position is 0 m, the latitude Ax and the longitude Ay of L2 become the latitude and the longitude of the head position of L2, respectively.
  • the latitude A'x and the longitude A'y are determined.
  • the latitude and longitude of the position 100 m from the top of L3 which is the top of the incommunicable section become latitude A'x and longitude A'y of L2.
  • the latitude and longitude of the end point of L2 are determined as latitude Bx and longitude By, respectively.
  • the latitude B'x and the longitude B'y are obtained.
  • the position of 500 m follows the link from the head position of L3 and becomes the end point of the incompatable section after correction.
  • the position correction parameter is determined using the above values, and the adjustment schedule is registered in the schedule storage unit 413 in step S2013.
  • step S2006 L1 is 300 m, which is longer than the total length 100 m of the incommunicable link section, so in step S2009, the communication start position is set to 200 m, which is the difference between the incommunicable link section and L2. Then, in step S2010, the total length of the communication impossible link string is set to 0 m.
  • step S2011 a communication processing cycle is calculated.
  • the position parameter is calculated in step S2012, but since the communication start position is 200 m, the latitude Ax and the longitude Ay of L1 become the latitude and the longitude of a position 200 m ahead of the head position of L1, respectively.
  • the latitude A'x and the longitude A'y are determined.
  • the latitude and longitude of the head position of L3 which is the top of the incommunicable section become latitude A'x and longitude A'y of L1.
  • the latitude and longitude of the end point of L1 are determined as latitude Bx and longitude By, respectively.
  • the latitude B'x and the longitude B'y are obtained.
  • the latitude and longitude of the position 100 m following the link from the head position of L3 are the latitude B 'x of L1 and It becomes longitude B'y.
  • the position correction parameter is determined using the above values, and the adjustment schedule is registered in the schedule storage unit 413 in step S2013.
  • step S2015 Since the total length of the communication impossible link section is 0 m at this time, it is determined in step S2015 that the processing of the correction link is completed.
  • the scheduling unit 403 performs processing for registering a schedule from the route information. And operation
  • timing processing unit 404 When the timing processing unit 404 receives current position related information, processing is performed according to the flowcharts of FIGS. 20 and 21.
  • step S1800 the timing processing unit 404 sets a counter indicating the number of communication events to be communicated to 0.
  • step S1801 the timing processing unit 404 confirms, in each data of the schedule storage unit 413, whether the link number matches the current link number of the current position related information. If the link number matches the current link number of the current position related information, the timing processing unit 404 adds the movement distance of the current position related information to the cumulative movement distance of the data in step S1802.
  • step S1803 the timing processing unit 404 confirms whether the communication start position is zero. If the communication start position is 0, communication on the link may be started, and the process proceeds to step S1807.
  • the timing processing unit 404 checks in step S1804 whether the mobile has passed the communication start position. If the accumulated movement distance is less than the communication start position, the mobile unit has not yet passed the communication start point, and the process moves to step S1821. If the total movement distance is equal to or more than the communication start position, the mobile unit has passed the communication start position, so the timing processing unit 404 first sets 0 as the communication start position in step S1805 and starts communication of the link. Register that the position has been passed. Next, in step S1806, the timing processing unit 404 subtracts the communication start position from the accumulated movement distance, and registers the accumulated movement distance from the communication start position.
  • step S1807 when the accumulated movement distance exceeds the communication distance cycle in step S1807, the timing processing unit 404 first adds 1 to the counter in step S1813.
  • step S1814 the timing processing unit 404 checks whether the value of the counter is less than or equal to a specified value. If the value of the counter exceeds the prescribed value, no more communication events can be set, and the process moves to step S1820. On the other hand, when the value of the counter is less than or equal to the specified value, the timing processing unit 404 generates a communication timing notification from step S1815. First, the timing processing unit 404 sets the cumulative movement distance to 0 in step S1815. Next, in step S1816, the timing processing unit 404 confirms whether the position correction coefficient is zero.
  • the timing processing unit 404 determines the current position of the current position related information as the data acquisition position in step S1817. If the position correction coefficient is not 0, the timing processing unit 404 multiplies the position correction coefficient by the position correction coefficient in step S1818. Furthermore, the timing processing unit 404 adds the value obtained by adding the position correction constant to the multiplication value to the current position information, calculates the position before the change of the position of the communication timing changed by the adjustment of the communication timing, and obtains this as data Position. Next, the timing processing unit 404 adds 1 to the position correction coefficient of the schedule storage unit 413 in step S1819. Then, in step S1820, the timing processing unit 404 generates the communication timing notification shown in FIG.
  • step S1807 the timing processing unit 404 confirms the remaining distance in step S1808. If the remaining distance is not 0, the timing processing unit 404 subtracts the movement distance from the remaining distance. As a result, when the remaining distance becomes equal to or less than the communication distance cycle in step S1810, the distance to the next intersection becomes less than the communication request cycle at the next communication cycle, and the timing processing unit 404 makes the remaining in step S1811. Set the distance to 0. Also, in step S1812, the timing processing unit 404 adds 1 to the counter. Then, the timing processing unit 404 determines that the communication timing has come forward, and the process proceeds to step S1815. Thereafter, the timing processing unit 404 carries out the processing after step S1815 in the same manner as described above.
  • communication timing with the content server 1 can be provided to the car navigation device 8 and the RSE device 9.
  • the communication control device 7 adjusts the communication for the communication disabled section to be performed in advance with respect to the application installed in the car navigation device 8 or the RSE device 9. Provide timing. Therefore, according to the present embodiment, the server does not have to perform communication control of all mobile units, and the processing of the server can be reduced. Further, in the present embodiment, the plurality of applications installed in the car navigation device 8 or the RSE device 9 make a communication request to the communication control device 7 to obtain the adjusted communication timing for the non-communicable section. Can. Therefore, according to the present embodiment, it is not necessary to perform communication control in consideration of the route of the mobile by each application, and the processing of each application can be reduced.
  • the correction value of the position information when the communication control device 7 requests the content server 1 for data that is, the communication timing Notify the application of the original location information before moving forward. Therefore, according to the present embodiment, even when the application requests data to the content server 1 in advance while avoiding the incommunicable section, the application can acquire the content data regarding the position of the incommunicable section. Further, in the present embodiment, the corrected communication timing is notified to the application related to the detour or route change of the mobile. More specifically, in the present embodiment, when the end point of the link is an intersection, the remaining distance is compared with the communication distance period.
  • the application can secure a sufficient processing time until the mobile body reaches the intersection.
  • the communication timing is provided by converting the time period into the movement distance also for the application in which the communication period is in the unit of time. For this reason, according to the present embodiment, in addition to the application in which the communication cycle is in units of distance, an application that processes information periodically in a time cycle can execute communication for the non-communicable section ahead of time. In addition, when the actual moving speed of the moving object becomes slower than the planned speed, the communication timing time interval becomes longer.
  • communication timing is provided by converting a time cycle to a movement distance even for an application in which the communication cycle is in a unit of time. Therefore, according to the present embodiment, communication congestion can be reduced even when there are a large number of mobile units performing the same communication due to traffic congestion in the vicinity. Further, in the present embodiment, the allowable maximum amount of correction that occurs due to the advance of the communication timing is designated for each communication request. And, in the present embodiment, the forward movement of the communication requiring the correction of the allowable maximum amount or more is not performed. For this reason, it is possible to avoid communication advanced so far that the application can not cope. Further, in the present embodiment, the number of communication timing notifications generated upon reception of one current position related information is designated in order of priority of communication request.
  • the communication request with low priority is transmitted at the next reception timing of the current position related information. Therefore, according to the present embodiment, it is possible to prevent the occurrence of congestion due to overlapping communication timings of a large number of communication requests.
  • the communication timing is generated so that the time for the communication cycle can be secured before the intersection.
  • the application may specify, for each communication request, a time to be secured before the mobile body reaches the intersection, and the communication control device 7 may compare the distance and the remaining distance for that time. In this way, the processing time of the application, which is different from the communication cycle, can be secured before the mobile body reaches the intersection.
  • the ROM 302 stores an OS (Operating System). Then, at least a part of the OS is executed by the CPU 301.
  • the CPU 301 executes a program that implements the functions of the route registration unit 401, the in-vehicle LAN communication unit 402, the schedule unit 403, the timing processing unit 404, and the communication request registration unit 405 while executing at least a part of the OS. As the CPU 301 executes the OS, task management, memory management, file management, communication control and the like are performed.
  • the RAM 303 is stored in at least one of a register in the CPU 301 and a cache memory.
  • the programs for realizing the functions of the route registration unit 401, the in-vehicle LAN communication unit 402, the schedule unit 403, the timing processing unit 404, and the communication request registration unit 405 are magnetic disks, flexible disks, optical disks, compact disks, Blu-ray (registered trademark). ) May be stored in a portable recording medium such as a disc or a DVD.
  • “unit” of route registration unit 401, in-vehicle LAN communication unit 402, schedule unit 403, timing processing unit 404, and communication request registration unit 405 is read as “circuit” or “process” or “procedure” or “process”. May be Also, the communication control device 7 may be realized by a processing circuit.
  • the processing circuit is, for example, a logic integrated circuit (IC), a gate array (GA), an application specific integrated circuit (ASIC), or a field-programmable gate array (FPGA).
  • the route registration unit 401, the in-vehicle LAN communication unit 402, the schedule unit 403, the timing processing unit 404, and the communication request registration unit 405 are each realized as part of a processing circuit.
  • processing circuit the upper concept of the processor, the memory, the combination of the processor and the memory, and the processing circuit. That is, the processor, the memory, the combination of the processor and the memory, and the processing circuit are specific examples of the "processing circuit".
  • 1 content server 2 moving object, 2a moving object, 2b moving object, 2c moving object, 3 public network, 4a traveling route, 4b traveling route, 4c traveling route, 5a departure location, 5b departure location, 5c departure location, 6a purpose Location, 6b destination, 6c destination, 7 communication control device, 8 car navigation device, 9 RSE device, 10 vehicle LAN, 301 CPU, 302 ROM, 303 RAM, 304 vehicle LAN interface, 401 route registration unit, 402 vehicle LAN Communication unit, 403 schedule unit, 404 timing processing unit, 405 communication request registration unit, 411 route storage unit, 412 communication request storage unit, 413 schedule storage unit, 414 position information storage unit.

Abstract

通信制御装置(7)は、外部装置と通信を行う複数のアプリケーションプログラムが実装された移動体に搭載される。スケジュール部(403)は、アプリケーションプログラムごとに規定されている、各アプリケーションプログラムが外部装置と通信する際の距離周期である通信距離周期と、移動体の移動経路とに基づき、アプリケーションプログラムごとに、各アプリケーションプログラムが外部装置と通信を行う通信タイミングを移動経路上の位置でスケジューリングする。タイミング処理部(404)は、アプリケーションプログラムごとに、移動体が通信タイミングの位置に到達したか否かを判定し、いずれかのアプリケーションプログラムについて移動体が通信タイミングの位置に到達した場合に、対応するアプリケーションプログラムに通信タイミングが到来したことを通知する。

Description

通信制御装置、通信制御方法及び通信制御プログラム
 本発明は、通信制御装置、通信制御方法及び通信制御プログラムに関する。
 例えば、特許文献1では、通信制御装置はサーバに設置されている。また、特許文献1では、自動車等の移動体に搭載された移動通信装置が通信を開始する際に、移動通信装置が、移動体の現在位置、目的地、経路などの情報を通信制御装置に送信する。また、通信制御装置は、コンテンツサーバより、コンテンツデータが利用されるべき地点及びコンテンツデータのデータサイズを取得する。更に、通信制御装置は、コンテンツデータを配信すべき地点に移動体が到達する前に移動通信装置がデータ受信を完了するようにトンネルなどの通信不可区間も考慮して通信スケジュールを決定する。また、通信制御装置は、決定した通信スケジュールを移動通信装置に送信する。そして、移動通信装置は、受信した通信スケジュールに沿ってコンテンツサーバからコンテンツデータを受信する。これにより、移動体はある特定の地点において利用すべきコンテンツデータをその地点に達する前に受信するようにしている。
 特許文献2では、トンネルなどの通信不可能なエリアを地図上から判定し、そのエリアで必要なデータを通信不可能なエリアに侵入する前に事前に取得する手法が提案されている。また、特許文献2では、高速な通信回線が利用可能であれば優先的に高速な通信回線を利用する回線切り替え手法が提案されている。
特許第5430235 特開2004-193995号公報
 従来の通信制御装置は、コンテンツサーバに設置される場合は、複数の移動体の通信スケジュールを決定している。このため、従来の方法では、多数の移動体の通信スケジュールを高速に決定することができる高価なサーバ装置が必要であるという課題があった。
 また、通信制御装置を移動体に設置する場合は、画像や音声といったアプリケーションプログラム(以下、アプリケーションともいう)ごとに圧縮率を変更する必要がある。このため、従来の方法では、アプリケーションごとに異なる通信制御手段を実現しなければならないという課題があった。
 圧縮率の変更は、例えば、MPEGなどのレートの変更である。通信制御装置を移動体に設置する場合は、画質や音質を下げて送信データ総量を減らす(つまり、圧縮率を高める)必要がある。そして、移動体に設置された通信制御装置は、通信ができない区間に到達する前に、データのダウンロードを完了しておくことが必要になる。しかし、このようなデータの圧縮率の変更などの機能はアプリケーションによって異なる(どのくらい圧縮できるか、そもそも圧縮機能があるか、など)ため、アプリケーション毎にそれぞれ前倒しのための通信を実施する必要がある。
 このため、従来の方法では、以下のような課題がある。
 1.通信制御装置を移動体に設置する場合は、それぞれのアプリケーションに通信不可区間対策の機能を実装しなければならない。
 1.1.従って、アプリケーション毎に通信不可区間対策の機能のための開発費がかかる。
 1.2.また、通信不可区間対策の機能の実行時の処理量が多い(アプリケーション毎に動くため)。従って、車載装置に、高性能なCPU(Central Processing Unit)及び大容量のメモリ量が必要になる。
2.通信制御装置をサーバに設置する場合は、サーバに高性能=高価な設備が必要になる。
 本発明は、このような課題を解決することを主な目的とする。より具体的には、本発明は、移動体に通信制御装置を搭載する場合に、アプリケーション毎の通信制御を不要とすることを主な目的とする。
 本発明に係る通信制御装置は、
 外部装置と通信を行う複数のアプリケーションプログラムが実装された移動体に搭載される通信制御装置であって、
 アプリケーションプログラムごとに規定されている、各アプリケーションプログラムが前記外部装置と通信する際の距離周期である通信距離周期と、前記移動体の移動経路とに基づき、アプリケーションプログラムごとに、各アプリケーションプログラムが前記外部装置と通信を行う通信タイミングを前記移動経路上の位置でスケジューリングするスケジュール部と、
 アプリケーションプログラムごとに、前記移動体が通信タイミングの位置に到達したか否かを判定し、いずれかのアプリケーションプログラムについて前記移動体が通信タイミングの位置に到達した場合に、対応するアプリケーションプログラムに通信タイミングが到来したことを通知するタイミング処理部とを有する。
 本発明によれば、移動体に搭載された通信制御装置が、複数のアプリケーションの通信制御を行うため、アプリケーションごとの通信制御を不要とすることができる。
実施の形態1に係る通信制御装置が動作するシステムの構成例を示す図。 実施の形態1に係る移動体の内部構成例を示す図。 実施の形態1に係る通信制御装置のハードウェア構成例を示す図。 実施の形態1に係る通信制御装置の機能構成例を示す図。 実施の形態1に係る経路格納部のデータベースの構造例を示す図。 実施の形態1に係る通信要求格納部のデータベース構造例を示す図。 実施の形態1に係るスケジュール格納部のデータベース構造例を示す図。 実施の形態1に係る位置情報格納部のデータベース構造例を示す図。 実施の形態1に係る通信タイミング通知のデータ構造例を示す図。 実施の形態1に係る車載LAN通信部の動作例を示すフローチャート。 実施の形態1に係る通信要求登録部の動作例を示すフローチャート。 実施の形態1に係るスケジュール部の動作例を示すフローチャート。 実施の形態1に係るタイミング処理部の動作例を示すフローチャート。 実施の形態1に係るタイミング処理部の動作例を示すフローチャート。 実施の形態1に係る経路登録部の動作例を示すフローチャート。 実施の形態1に係るステップS1207の処理の詳細を示すフローチャート。 実施の形態1に係るステップS1207の処理の詳細を示すフローチャート。 実施の形態1に係るステップS1208の処理の詳細を示すフローチャート。 実施の形態2に係るスケジュール格納部のデータベース構造例を示す図。 実施の形態2に係るタイミング処理部の動作例を示すフローチャート。 実施の形態2に係るタイミング処理部の動作例を示すフローチャート。 実施の形態2に係るスケジュール部の動作例を示すフローチャート。 実施の形態2に係るスケジュール部の動作例を示すフローチャート。 実施の形態2に係るステップS1915の処理の詳細を示すフローチャート。 実施の形態2に係るステップS1915の処理の詳細を示すフローチャート。 実施の形態1に係る移動経路の例を示す図。 実施の形態1に係る通信制御装置の動作の概要を示す図。 実施の形態2に係る通信制御装置の動作の概要を示す図。 実施の形態2に係る移動経路の例を示す図。
 以下、本発明の実施の形態について、図を用いて説明する。以下の実施の形態の説明及び図面において、同一の符号を付したものは、同一の部分または相当する部分を示す。
 実施の形態1.
***構成の説明***
 図1は、本実施の形態に係る通信制御装置が動作するシステムの全体を示すシステム構成図である。
 図1において、コンテンツサーバ1は移動体からの要求に従ってその移動体の位置に関連する情報を送信するサーバ装置である。
 移動体2a~2cは、予め決定した走行経路に従って移動する自動車などの移動体である。なお、移動体2a~2cを区別する必要がない場合は、単に移動体2という。
 公衆網3は、携帯電話網やインターネットにより構成される既存の公衆通信網である。
 走行経路4a~4cは各移動体2a~2cが出発地にて移動を開始する際に決定した目的地までの移動経路である。
 出発地5a~5cは、各移動体2a~2cの出発地である。
 目的地6a~6cは、各移動体2a~2cの目的地である。
 また、図2は、本実施の形態に係る通信制御装置が動作する移動体2の内部の装置構成を示す構成図である。
 図2において、通信制御装置7は、カーナビゲーション装置又はRSE(リアシートエンターテイメント)装置にコンテンツサーバ1との通信により取得されたデータを提供する。通信制御装置7により行われる動作は、通信制御方法及び通信制御プログラムに相当する。
 カーナビゲーション装置8は、GPS(Global Positioning System)により現在位置を把握するとともに地図情報を用いて移動体の走行経路を決定する。
 RSE装置9は、後部座席に設置され、後部座席の乗員に対して情報提供などのサービスを行うエンターテイメント装置である。
 カーナビゲーション装置8及びRSE装置9では、アプリケーションが動作する。また、移動体2では、これら以外のアプリケーションが動作してもよい。つまり、移動体2には、複数のアプリケーションが実装されている。
 車載LAN(Local Area Network)10は、移動体2a~2cの各種装置間の通信を実現するLANである。
 無線通信装置11は、3G回線やLTE(登録商標)回線など使って公衆網3を介してコンテンツサーバ1と車載LAN10に接続された各装置が通信するために用いられる。
 また、図3は、本実施の形態に係る通信制御装置7のハードウェア構成図である。
 図3において、CPU301は通信制御装置7の動作をソフトウェアにより処理するプロセッサである。
 ROM(Read Only Memory)302は、通信制御装置7のソフトウェアが格納される記憶装置である。
 RAM(Random Access Memory)303は、CPU301で動作するソフトウェアをROM302からロードする記憶装置である。
 ROM302には、後述する経路登録部401、車載LAN通信部402、スケジュール部403、タイミング処理部404、通信要求登録部405の機能を実現するプログラムが記憶されている。これらプログラムは、ROM302からRAM303にロードされる。
 そして、プロセッサ901がこれらプログラムを実行して、後述する経路登録部401、車載LAN通信部402、スケジュール部403、タイミング処理部404、通信要求登録部405の動作を行う。
 車載LANインタフェース304は、車載LAN10を介してカーナビゲーション装置8又はRSE装置9と通信するための通信インタフェースである。
 本実施の形態に係る通信制御装置7の機能構成の詳細を説明する前に、通信制御装置7の動作の概要を説明する。
 ここでは、通信制御装置7が搭載されている移動体2の走行経路が図26に示す経路であるものとする。
 また、移動体2には、アプリケーション1とアプリケーション2が実装されているものとする。
 移動体2の走行経路には、トンネルが含まれている。トンネルでは、移動体2に実装されている各アプリケーションはコンテンツサーバ1等の外部装置と通信することができない。
 通信制御装置7は、移動体2がA地点からF地点まで移動する場合に、トンネル(L3)部分の通信を、それ以前のL1~L2で実施するように、各アプリケーションの通信タイミングの調整を行う。
 なお、アプリケーション1は、移動体2が500m進むごとに、現在位置に関するデータをインターネットから取得するものとする。
 また、アプリケーション2は、移動体2が5km進むごとに、現在位置に関するデータをインターネットから取得するものとする。
 これらアプリケーションが現在位置に関するデータを取得するための距離周期を、通信距離周期という。
1.基本的な動作
A.起動時の動作:
 それぞれのアプリケーションは、通信制御装置7に、通信距離周期を登録する。アプリケーション1は、500m毎の通信距離周期を登録し、アプリケーション2は5km毎の通信距離周期を登録する。
B.タイミングの調整:
 通信制御装置7は、移動体2の走行経路の情報を得ると通信不可区間の有無を確認する。通信制御装置7は、図26のL3を見つけると、L3より手前で通信可能な区間の通信距離周期を修正する。
 より具体的には、実施の形態1においては、通信制御装置7はL2の通信距離周期を、(L2の距離/(L2の距離+L3の距離))×アプリケーションの通信距離周期に修正する。
 また、実施の形態2においては、通信制御装置7は、本来のL2の通信距離周期と並行して、L3の通信距離周期もL2に設定する。
 但し、L2が短い場合は、通信制御装置7は、更に遡ってL1~L2の区間の周期を修正する。
C.通信動作:
C-1:通常の区間
 通信制御装置7は、走行経路の情報に沿って、各アプリケーションが通信すべき位置をA地点から生成する。通信制御装置7は、現在の移動体2の位置をGPSから定期的に(例えば、1秒間隔)受け取る。このため、通信制御装置7は、1秒毎に前回通信してからの移動距離をアプリケーション毎に計算する(「累積移動距離」で計算)。各アプリケーションの通信距離周期(500mまたは5km)の分だけ移動体2が進むと、通信制御装置7は、アプリケーションに通信タイミングであることを通知する。通信制御装置7から通信タイミングであることを通知されると、アプリケーションはインターネットから現在位置のデータを取得する。
C-2:トンネルの手前の区間
 通信制御装置7は、「B.タイミングの調整」で修正された距離の周期でアプリケーションに通信タイミングを送信する。アプリケーションは前倒しでデータを取得する。つまり、アプリケーションは、まだ移動体2が達していない、先の位置に対応付けられたデータを取得する。図27の例では、トンネルが存在していなければ、アプリケーションは移動体2がP1の位置に到達した際にP1のデータを取得する。また、アプリケーションは移動体2がP2の位置に到達した際にP2のデータを取得する。同様に、アプリケーションは移動体2がP3の位置に到達した際にP3のデータを取得する。トンネルを考慮した通信タイミングでは、アプリケーションは移動体2がp1の位置に到達した際にP1のデータを取得する。また、アプリケーションは移動体2がp2の位置に到達した際にP2のデータを取得する。更に、アプリケーションは移動体2がp3の位置に到達した際にP3のデータを取得する。このように、通信制御装置7は、通信不可区間を考慮して、移動体2が達していない、先の位置に対応付けられたデータを取得できるよう通信タイミングを修正する。そして、通信制御装置7は、修正した通信タイミングに基づき、アプリケーションに、各取得すべきデータと各データの取得位置(p~p12)を通知する。
 アプリケーションは、通信制御装置7から通知された位置で、先の位置のデータをインターネットから取得する。
2.追加のより複雑な動作
(1)時間周期で動作するアプリケーションへの対応
 ここでは、アプリケーション1、アプリケーション2については、500m毎、5km毎にデータを取得する例を示したが、アプリケーションによっては30秒周期、1分周期に動作する仕様が考えられる。このようなアプリケーションについては、通信制御装置7は、リンク毎に設定される予定速度に基づき、リンク毎に通信を行うべき距離の間隔を計算する。そして、通信制御装置7は、アプリケーション1やアプリケーション2に取得すべきデータと各データの取得位置を通知する。
(2)1秒毎の最大通信量制限
 複数のアプリケーションの周期がぶつかったタイミングでは通信量が増える。このため、通信回線が輻輳する。従って、通信制御装置7は、1秒毎の「C.通信動作」を実施する際に、通信タイミングを通知するアプリケーション数を「通信イベント数」で制限する。優先度の低いアプリケーションは、次のGPS位置を受信する1秒後に「C.通信動作」が実施される。尚、この制限は、実際の通信量ではなく、通信するアプリケーション数により行われる。
(3)交差点手前でのタイミングの修正
 経路変更に関係する通信データを取得するアプリケーションの場合(後述の「迂回考慮フラグがON」)、交差点(分岐点)直前に通信データを取得しても、その後の経路変更動作が間に合わないといった事が考えられる。そのため、通信制御装置7は、移動距離毎の通信タイミングが交差点の直前になる場合、交差点までの距離が通信距離周期分手前になるよう通信タイミングを前倒しに修正する。アプリケーションは、修正された通信タイミングに応じて、通信データを取得する(後述の図13のステップS1304~ステップS1308の処理)。通信タイミングの前倒しの対象となる交差点の手前の区間を交差点手前区間という。
 以上を前提に、通信制御装置7の機能構成例を説明する。
 図4は、通信制御装置7の機能構成例を示す。
 図4において、経路登録部401は、カーナビゲーション装置8から受信する経路情報を経路格納部411に登録する。また、経路登録部401は、スケジュール部403を呼び出してスケジュールを生成する。
 車載LAN通信部402は、車載LANインタフェース304を用いて車載LAN10を介してカーナビゲーション装置8及びRSE装置9と通信する。
 スケジュール部403は、走行経路の通信不可区間を判定する。また、スケジュール部403は、走行経路の状態にあった通信距離周期を決定し、決定した通信距離周期をスケジュール格納部413に登録する。スケジュール部403により行われる動作は、スケジュール処理という。
 タイミング処理部404は、車載LAN通信部402を介してカーナビゲーション装置8及びRSE装置9に通信タイミングを通知する。また、タイミング処理部404により行われる動作は、タイミング処理という。
 通信要求登録部405は、カーナビゲーション装置8及びRSE装置9が送信した通信要求を通信要求格納部412に登録する。また、通信要求登録部405は、スケジュールの生成をスケジュール部403に依頼する。
 経路格納部411は、カーナビゲーション装置8から車載LAN通信部402を介して受信した移動体の走行経路を格納する。
 通信要求格納部412は、カーナビゲーション装置8及びRSE装置9からの通信タイミング要求を格納する。
 スケジュール格納部413は、スケジュール部403が決定した通信距離周期を格納する。
 位置情報格納部414は、カーナビゲーション装置8から例えば1秒間で受信する現在位置関連情報を格納する。
 前述したように、経路登録部401、車載LAN通信部402、スケジュール部403、タイミング処理部404、通信要求登録部405はプログラムで実現される。CPU301が、プログラムを実行することにより、経路登録部401、車載LAN通信部402、スケジュール部403、タイミング処理部404、通信要求登録部405の機能が実現される。
 また、経路格納部411、通信要求格納部412、スケジュール格納部413及び位置情報格納部414は、ROM302又はRAM303により実現される。
 尚、以後、カーナビゲーション装置8が1秒周期で通信制御装置7に現在位置関連情報を送信する例を説明する。
 図5は、経路格納部411のデータベースの構造例を示す。
 図5において各行が走行経路を構成する1つのリンクを示す。走行経路の出発地がリンク番号1の始点位置であり、走行経路の目的地が最後の行の終点位置となる。また、リンク番号1の終点はリンク番号2の始点と一致する。
 図5の各行において、始点位置および終点位置はリンクの先頭と末尾の位置を経度と緯度で示す。
 始点交差点フラグおよび終点交差点フラグはそれぞれ始点位置と終点位置が交差点などの経路の分岐点であるかどうかを示す。始点交差点フラグ又は終点交差点フラグが0の始点位置又は終点位置は分岐点ではない。一方、始点交差点フラグ又は終点交差点フラグが1の始点位置又は終点位置は分岐点である。
 距離は、始点位置と終点位置間の道のりの距離を示す。
 予定速度は、始点位置から終点位置までの移動で予定される速度を示す。
 道路属性は、始点位置から終点位置までの道路の属性を示す。具体的には、道路属性は、一般道、高速道路、トンネル、巨大橋、地下道路等の道路の属性を示す。尚、道路属性は一般道のトンネルなど、複数の属性を設定可能である。
 図6は、通信要求格納部412のデータベース構造例を示す。
 図6の各行が1つの通信要求を示す。
 要求番号は、通信要求の識別子である。
 依頼元装置は、通信要求を行った車載LAN10に接続された装置を一意に示す識別子である。依頼元装置として、例えばIPアドレスが用いられる。
 アプリケーションIDは、通信要求を行ったアプリケーションを依頼元装置において一意に示す識別子である。アプリケーションIDとして、例えばTCPやUDPのポート番号が用いられる。
 通信周期では、走行経路に通信不可の地点がなく、通常に通信する場合の通信の周期が時間単位または移動距離単位で示される。
 迂回考慮フラグは、通信要求をしているアプリケーションがコンテンツサーバ1から受信したデータにより迂回動作を促す機能を持っているかどうかを示す。迂回考慮フラグが0の場合はアプリケーションには該当機能がない。一方、迂回考慮フラグが1の場合はアプリケーションに該当機能がある。
 許容補正量は、通信要求に対応する通信を前倒しする際に許容される補正量を示す。
 優先度は、通信要求の優先度である。優先度は1~Nで示される。尚、1が最高優先度を意味する。
 図7は、スケジュール格納部413のデータベース構造例を示す。
 リンク番号は、走行経路のリンク番号である。
 要求番号は、通信要求格納部412に格納された通信要求の番号である。
 優先度は、通信要求格納部412に格納された優先度である。
 通信距離周期は、通信要求の通信周期を移動距離に換算した値である。
 累積移動距離は、前回通信タイミングをアプリケーションに対して送信した後の移動距離である。
 残距離は、リンクの終点位置までの残り距離である。尚、該当リンクの終点交差点フラグが1かつ通信要求の迂回考慮フラグが1の場合にのみ、残距離は有効であり、それ以外の場合は残距離は0である。
 位置補正係数および位置補正Δは、次回の通信タイミングにおいて、アプリケーションがコンテンツサーバ1から情報を取得する際に指定する現在位置の補正値を示す。位置補正Δの経度および緯度の値を位置補正係数に乗算することにより補正値が算出される。尚、補正が不要な場合は位置補正係数=0である。
 図8は、位置情報格納部414のデータベース構造例を示す。
 現在位置は、GPS等で測定した移動体の現在位置情報である。
 移動距離は、カーナビゲーション装置8が測定した過去1秒間の移動距離(道のり)である。
 現リンク番号は、移動体の現在位置が属するリンクのリンク番号を示す。尚、走行経路が未定の場合は、現リンク番号は0である。
 図9は、通信タイミング通知のデータ構造例を示す。
 要求元装置は、通信要求を通信制御装置7に対して行った装置を示す識別子である。要求元装置の識別子として、例えばIPアドレスが用いられる。
 アプリケーションIDは、要求元装置内において通信要求を行ったアプリケーションを一意に識別する識別子である。アプリケーションIDとして、例えばTCPポート番号が用いられる。
 データ取得位置は、アプリケーションがコンテンツサーバ1に対してコンテンツデータの送信を要求する際に指定すべき位置情報である。
***動作の説明***
 次に動作について説明する。
 まず、自動車等の移動体が走行を開始するとき、通信制御装置7、カーナビゲーション装置8、RSE装置9に電源の供給が開始され、それぞれ起動する。すると、カーナビゲーション装置8は、移動体が現在いる場所付近の渋滞・工事・事故といったローカル情報をコンテンツサーバから取得するために、通信制御装置7に通信要求を登録する。
 カーナビゲーション装置8が送信した通信要求は、車載LANインタフェース304で受信され、車載LAN通信部402で図10のフローチャートに従って処理される。
 車載LAN通信部402は、ステップS1001で車載LANインタフェース304の受信イベントを確認する。
 ステップS1002で受信があったことを確認すると、車載LAN通信部402は、ステップS1005で受信データの種別を確認する。ここでは、受信データの種別は通信要求であるので、車載LAN通信部402は、ステップS1007で通信要求を通信要求登録部405に送信する。
 ここで、車載LAN通信部402の処理は終了する。
 次に、通信要求は通信要求登録部405で図11のフローチャートに従って処理される。
 通信要求登録部405は、通信要求を受け取ると、まずステップS1101で、通信要求を通信要求格納部412に登録する。
 次に、通信要求登録部405は、ステップS1102で、通信要求格納部412に登録した通信要求番号を指定してスケジュール部403を呼び出す。そして、スケジュール部403の処理が終了したら、通信要求登録部405は、ステップS1103でスケジュール格納部413のデータをソートする。通信要求登録部405は、まずリンク番号でスケジュール格納部413のデータをソートする。次に、通信要求登録部405は、同一リンク番号のデータ毎に、優先度が高い順にスケジュール格納部413のデータをソートする。以上で通信要求登録部405の処理は終了する。
 次に、スケジュール部403は、図12のフローチャートに従って動作する。
 まず、スケジュール部403は、ステップS1201で経路格納部411に経路が登録されているか確認する。ここでは、経路情報はまだ格納されていないので、処理はステップS1202に移行する。スケジュール部403は、ステップS1202で経路情報がない場合のデフォルト条件で通信距離周期を算出する。具体的には、スケジュール部403は、図6における要求番号1のように通信周期が60秒と時間単位で指定されていた場合、移動速度を一般の制限速度40km/hと仮定して通信距離周期を667mと算出する。また、要求番号3のように通信周期が1kmと距離で指定されている場合は、スケジュール部403は、通信距離周期をそのまま1kmと指定する。次に、スケジュール部403は、ステップS1202で算出した通信距離周期を、要求番号とともにリンク番号0で登録する。尚、スケジュール部403は、優先度は通信要求の優先度、累積移動距離の初期値は0m、残距離は0m、位置補正係数は0と登録する。
 以上で通信要求受信時の処理は終了する。
 尚、以上はカーナビゲーション装置8が通信要求を行う場合について説明したが、RSE装置9が行う通信要求についても同様の処理が行われる。
 次に、カーナビゲーション装置8は、通信制御装置7に対して現在位置関連情報の1秒周期の送信を開始する。通信制御装置7では、カーナビゲーション装置8が送信した現在位置関連情報を受信すると、車載LAN通信部402が図10のフローチャートに従った処理を行う。
 車載LAN通信部402はステップS1001で車載LANインタフェース304の受信イベントを確認する。ステップS1002で受信があったことを確認すると、車載LAN通信部402は、ステップS1005で受信データの種別を確認する。ここでは、受信データの種別は現在位置関連情報であるので、車載LAN通信部402は、ステップS1006で現在位置関連情報をタイミング処理部404に送信する。
 ここで、車載LAN通信部402の処理は終了する。
 タイミング処理部404は、現在位置関連情報を受け取ると、図13及び図14のフローチャートに従って処理を行う。
 まず、タイミング処理部404は、ステップS1300でこのタイミングで通信する通信イベント数を示すカウンタを0に設定する。
 次に、タイミング処理部404は、ステップS1301でスケジュール格納部413の各データにおいて、リンク番号が現在位置関連情報の現リンク番号と一致するか否かを確認する。
 リンク番号が現在位置関連情報の現リンク番号と一致した場合、タイミング処理部404は、ステップS1302で、該当するデータの累積移動距離に現在位置関連情報の移動距離を加算する。
 次に、ステップS1303で累積移動距離が通信距離周期を超えた場合に、まず、タイミング処理部404は、ステップS1309でカウンタに1を加算する。
 そして、タイミング処理部404は、ステップS1310でカウンタの値が規定値以下か否かを確認する。カウンタの値が規定値を超えている場合はこれ以上通信イベントを設定できないので、処理がステップS1317に移行する。一方、カウンタの値が規定値以下の場合、タイミング処理部404は、ステップS1311からの通信タイミング通知の生成処理を行う。
 まず、タイミング処理部404は、ステップS1311で累積移動距離を0に設定する。
 次に、タイミング処理部404は、ステップS1312で位置補正係数が0かどうかを確認する。上述の例では、位置補正係数は0なので、タイミング処理部404は、ステップS1313で現在位置関連情報の現在位置をデータ取得位置に決定する。そして、タイミング処理部404は、ステップS1316で、図9に示す通信タイミング通知を生成し、生成した通信タイミング通知を車載LAN通信部402に送信する。尚、ステップS1303で累積移動距離が通信距離周期未満と判断された場合は、タイミング処理部404は、ステップS1304で残距離を確認する。上述の例では、残距離は0なので、処理はステップS1317に移行する。タイミング処理部404は、以上の処理をステップS1317でスケジュール格納部413の全てのデータに対して実行し、処理を終了する。そして、車載LAN通信部402は通信タイミング通知を要求元装置に対して送信し、処理を終了する。
 そして、通信タイミング通知を受け取った要求元装置、つまりカーナビゲーション装置8は、コンテンツサーバ1からデータ取得位置、つまり現在位置に関するコンテンツデータを取得する。
 次に、運転手が目的地をカーナビゲーション装置8に設定し、カーナビゲーション装置8で走行経路が決定すると、カーナビゲーション装置8は通信制御装置7に経路情報を送信する。
 通信制御装置7では、車載LAN通信部402が図10のフローチャートに従って経路情報を処理する。
 車載LAN通信部402は、ステップS1001で車載LANインタフェース304の受信イベントを確認する。
 ステップS1002で受信があったことを確認すると、車載LAN通信部402は、ステップS1005で受信データの種別を確認する。
 ここでは、受信データの種別は経路情報であるので、車載LAN通信部402は、ステップS1008で経路情報を経路登録部401に送信する。
 ここで、車載LAN通信部402の処理は終了する。
 経路登録部401は図15のフローチャートに従って経路情報を処理する。
 まず、経路登録部401は、ステップS1401で経路格納部411に経路情報を格納する。
 次に、経路登録部401は、スケジュール格納部413にリンク番号0以外のデータがある場合は、ステップS1402で、該当するデータを削除する。
 次に、経路登録部401は、ステップS1403で通信要求格納部412に通信要求が登録されているか確認する。
 通信要求が登録されている場合は、経路登録部401は、ステップS1404およびステップS1405で各通信要求について、通信要求番号を指定してスケジュール部403を呼び出す。
 そして、スケジュール部403の処理が終了したら、経路登録部401は、ステップS1406でスケジュール格納部413のデータをソートする。経路登録部401は、まずリンク番号でスケジュール格納部413のデータをソートする。次に、経路登録部401は、同一リンク番号のデータ毎に、スケジュール格納部413のデータを優先度が高い順にソートする。
 以上で経路登録部401の処理は終了する。
 次に、スケジュール部403は図12のフローチャートに従って処理を実行する。
 まず、スケジュール部403は、ステップS1201で経路格納部411に経路情報が格納されているか確認する。上述の例では、経路格納部411に経路情報が格納されているので、スケジュール部403は、ステップS1204で経路の先頭から処理を開始する。
 スケジュール部403は、ステップS1205で経路格納部411のリンク情報の道路属性を順にたどり、通信可能と判断される連続するリンク列(通常リンク列)を決定する。尚、通信可能と判断する道路属性は、予め通信制御装置7のソフトウェアで決めておいてもよい。また、通信可能と判断する道路属性は、設定ファイル等で指定可能としても良い。通信不可能なリンクにたどり着いたら、スケジュール部403は、次にステップS1206で通信不可能な連続するリンク列(通信不可リンク列)を決定する。スケジュール部403は、通常リンク列と同様、リンクの道路属性情報を精査して、通信不可リンク列を決定する。
 通常リンク列と通信不可リンク列が決まったら、スケジュール部403は、ステップS1207で通信周期調整リンク列を決定し、スケジュールを決定する。この処理の詳細を図16及び図17のフローチャートに従って説明する。
 まず、スケジュール部403は、ステップS1501において通信要求の許容補正量から、許容補正距離量を計算する。通信要求の許容補正量が距離単位であれば、スケジュール部403は、許容補正量をそのまま使用する。許容補正量が時間単位であれば、スケジュール部403は、通信不可リンク列の予定速度の平均値を求め、求めた平均値に許容補正量(時間)を乗算した値を許容補正距離量として使用する。
 次に、ステップS1502で、スケジュール部403は、通信不可リンク列の全長を経路格納部411の距離から算出する。
 次にステップS1503で、スケジュール部403は、許容補正距離量と通信不可リンク列の全長とを比較する。通信不可リンク列の全長が許容補正距離量より長い場合は、スケジュール部403は、ステップS1504で通信不可リンク列の全長を許容補正距離量に修正する。
 次に、ステップS1505で、スケジュール部403は、通常リンク列の末尾のリンクを通信周期調整リンク列の先頭に移動する。つまり、通常リンク列に属するリンク列は末尾リンクが1つ短くなり、通信周期調整リンク列は先頭部分にリンクが1つ追加される。
 次に、スケジュール部403は、ステップS1506で通信周期調整リンク列の全長を計算する。
 次にステップS1507で、スケジュール部403は、処理中の通信要求の通信周期が時間単位か否かを確認する。処理中の通信要求の通信周期が時間単位の場合、スケジュール部403は、ステップS1509で通信周期調整リンク列を構成する全リンクの予定速度の平均値を求める。そして、スケジュール部403は、求めた平均値と通信周期とを乗算することで通信距離周期の平均値を求める。そして、スケジュール部403は、求めた平均値を、調整前通信距離周期として使用する。
 また、ステップS1507で通信周期が距離単位の場合は、スケジュール部403は、ステップS1508で通信周期を調整前通信距離周期として扱う。
 次に、スケジュール部403は、ステップS1510で調整後通信距離周期を以下の式で求める。
Figure JPOXMLDOC01-appb-M000001
 次に、スケジュール部403は、ステップS1511で、算出した調整後通信距離周期が規定値以上であるか否かを確認する。尚、規定値は通信制御処理7のソフトウェアで固定でも良いし、設定ファイル等で変更可能としても良い。
 規定値より調整後通信距離周期が短い場合、より手前のリンクから通信タイミングを調整する必要があるため、処理がステップS1505に戻る。更に、スケジュール部403は、通常リンク列の末尾のリンクを通信周期調整リンク列に移動して、再調整を行う。ステップS1511において調整後通信周期が規定値以上になったら、通信周期の調整は終了し、処理がステップS1512に移行する。
 ステップS1512では、スケジュール部403が、調整前通信距離周期と調整後通信距離周期の差分を求める。そしてスケジュール部403は、求めた差分の値から通信周期調整リンク列の各リンクの位置補正Δ値を求める。
 最後に、スケジュール部403は、ステップS1513で通信周期調整リンク列の各リンクの、処理中の通信要求のためのスケジュールを、スケジュール格納部413に登録する。このとき、スケジュール部403は、図7において、リンク番号に通信処理調整リンク列に属するリンクの各リンク番号を設定する。また、スケジュール部403は、要求番号および優先度に現在処理中の通信要求の要求番号と優先度を設定する。また、スケジュール部403は、通信距離周期に調整後通信距離周期を設定する。また、スケジュール部403は、累積移動距離に0mを設定し、位置補正係数に1を設定し、位置補正ΔにステップS1512で算出した各リンクの位置補正Δ値を設定する。また、スケジュール部403は、処理中の要求番号の通信要求の迂回考慮フラグが1で、且つ、該当リンクの終点交差点フラグが1の場合、残距離に(該当リンクの距離-リンクの予定速度×1秒)を登録する。一方、それ以外の場合は、スケジュール部403は残距離に0を登録する。尚、1秒はカーナビゲーション装置8が現在位置関連情報を送信する周期である。
 以上が図12のステップS1207の詳細である。
 図12に戻り、スケジュール部403は、ステップS1208で通常リンク列のスケジュールを登録する。この処理の詳細を図18のフローチャートに従って説明する。
 まず、スケジュール部403は、通常リンク列の先頭のリンクについて、処理中の通信要求の通信周期から通信距離周期を計算する。図6の要求番号3のように通信周期が距離単位の場合、スケジュール部403は、そのまま通信周期を通信距離周期として扱う。図6の要求番号1のように通信周期が時間単位の場合、スケジュール部403は、該当リンクの予定速度に通信周期を乗算し、通信距離周期を算出する。
 次に、スケジュール部403は、ステップS1602で通信要求の迂回考慮フラグを確認する。迂回考慮フラグが0でない場合、処理がステップS1603に移行し、スケジュール部403は、該当リンクの終点交差点フラグを確認する。
 終点交差点フラグが0でない場合、スケジュール部403は、残距離として(リンクの距離-リンクの予定速度×1秒)を使用する。尚、1秒はカーナビゲーション装置8が現在位置関連情報を送信する周期である。
 一方で、ステップS1602で迂回考慮フラグが0、もしくはステップS1603で終点交差点フラグが0の場合、経路上の迂回可能な分岐点を考慮する必要はない。このため、スケジュール部403は、残距離の値を0に設定する。
 次に、スケジュール部403は、ステップS1606で、以上の結果を踏まえてスケジュール格納部413にスケジュールを登録する。このとき、スケジュール部403は、リンク番号には現在のリンク番号を登録する。また、スケジュール部403は、要求番号には現在処理中の通信要求の要求番号を登録する。また、スケジュール部403は、優先度には現在処理中の通信要求の優先度を登録する。また、スケジュール部403は、通信距離周期にはステップS1601で算出した通信距離周期を登録する。また、スケジュール部403は、累積移動距離には0mを登録する。また、スケジュール部403は、残距離にはステップS1604またはステップS1605で決定した残距離を登録する。また、スケジュール部403は、位置補正係数には0を登録し、位置補正Δには0を登録する。
 スケジュール部403は、以上の処理をステップS1607において通常リンク列の全リンクについて実行する。
 以上が、図12のステップS1208の詳細である。
 図12に戻り、ステップS1209およびステップS1210で残りの経路についても以上と同様の処理が行われ、処理が終了する。
 以上で、経路情報を受信した際の、通信制御装置7の動作は終了する。
 これ以降に、カーナビゲーション装置8が1秒周期で送信する現在位置関連情報を通信制御装置7が受信すると、車載LAN通信部402は図10のフローチャートに従って、経路情報受信以前とまったく同様に、タイミング処理部404に現在位置関連情報を送信する。
 タイミング処理部404は、現在位置関連情報を受け取ると、図13及び図14のフローチャートに従って処理を行う。まず、タイミング処理部404は、ステップS1300でカウンタを0に設定する。
 次に、タイミング処理部404は、ステップS1301でスケジュール格納部413の各データにおいて、リンク番号が現在位置関連情報の現リンク番号と一致するかを確認する。
 リンク番号が現在位置関連情報の現リンク番号と一致した場合に、タイミング処理部404は、ステップS1302で、そのデータの累積移動距離に現在位置関連情報の移動距離を加算する。
 加算後の累積移動距離がステップS1303で通信距離周期を超えた場合、タイミング処理部404は、まずステップS1309でカウンタを1加算する。
 次に、タイミング処理部404は、ステップS1310でカウンタの値が規定値以下か否かを確認する。カウンタの値が規定値を超えた場合、これ以上このタイミングで通信イベントを実施できないので、処理はステップS1317に移行する。
 カウンタの値が規定値以下の場合は、タイミング処理部404は、ステップS1311以後の通信タイミング通知の生成処理を実施する。
 まず、タイミング処理部404は、ステップS1311で累積移動距離を0に設定し、次にステップS1312で位置補正係数が0かどうかを確認する。
 位置補正係数が0の場合は、タイミング処理部404は、ステップS1313で現在位置関連情報の現在位置をデータ取得位置に決定する。
 また、位置補正係数が0でない場合は、タイミング処理部404は、ステップS1314で位置補正係数を位置補正Δに乗算して得られる値を現在位置情報に加えて、通信タイミングの調整により変更された通信タイミングの位置の変更前の位置を算出し、これをデータ取得位置とする。
 次に、タイミング処理部404は、ステップS1315でスケジュール格納部413の位置補正係数に1を足す。
 そして、タイミング処理部404は、ステップS1316で図9に示す通信タイミング通知を生成し、生成した通信タイミング通知を車載LAN通信部402に送信する。
 また、ステップS1303で累積移動距離が通信距離周期未満であった場合、タイミング処理部404は、ステップS1304で残距離を確認する。
 残距離が0でなかった場合は、タイミング処理部404は、残距離から移動距離を減算する。その結果、ステップS1306で残距離が通信距離周期以下になった場合、次回の通信周期時には次の交差点までの距離が通信要求周期未満になってしまうので、タイミング処理部404は、ステップS1307で残距離を0に設定する。そして、タイミング処理部404は、ステップS1308でカウンタに1を加算し、前倒しで通信タイミングが到来したと判断し、ステップS1311に移行する。
 以後、前述と同様にステップS1311以降の処理を実施する。
 タイミング処理部404は、以上の処理をステップS1317でスケジュール格納部413の全てのデータに対して実行し、処理を終了する。そして、車載LAN通信部402は通信タイミング通知を要求元装置に対して送信し、処理を終了する。
 そして、通信タイミング通知を受け取った要求元装置、つまりカーナビゲーション装置8又はRSE装置9は、コンテンツサーバ1からデータ取得位置、つまり現在位置または補正された位置に関するコンテンツデータを取得する。
***実施の形態の効果の説明***
 以上のように、本実施の形態では、通信制御装置7が、カーナビゲーション装置8又はRSE装置9に搭載されたアプリケーションに対して通信不可区間のための通信を事前に実施するように調整した通信タイミングを提供する。このため、本実施の形態によれば、サーバが全移動体の通信制御を行わずに済み、サーバの処理を削減できる。
 また、本実施の形態では、カーナビゲーション装置8及びRSE装置9に搭載される複数のアプリケーションは、通信制御装置7に通信要求を行うことで通信不可区間のための調整済みの通信タイミングを得ることができる。このため、本実施の形態によれば、個々のアプリケーションで移動体の経路を意識した通信制御を行う必要がなく、個々のアプリケーションの処理を削減できる。
 また、本実施の形態では、通信不可区間のための通信を事前に行う場合に、通信制御装置7が、コンテンツサーバ1に対してデータを要求する際の位置情報の補正値、すなわち通信タイミングを前倒しする前の元の位置情報をアプリケーションに通知する。このため、本実施の形態によれば、アプリケーションが通信不可区間を避けて前もってコンテンツサーバ1にデータを要求する場合でも、アプリケーションは、通信不可区間の位置に関するコンテンツデータを取得することができる。
 また、本実施の形態では、移動体の迂回や経路変更に関連するアプリケーションに、修正された通信タイミングが通知される。より具体的には、本実施の形態では、リンクの終点が交差点である場合に、残距離と通信距離周期とが比較される。そして、残距離すなわち交差点までの距離が通信距離周期より短くなった場合には、前倒しで通信タイミングがアプリケーションに通知される。このため、本実施の形態によれば、移動体が交差点に達するまでにアプリケーションは十分な処理時間を確保できる。
 また、本実施の形態では、通信周期が時間単位のアプリケーションにも時間周期を移動距離に換算して通信タイミングを提供している。このため、本実施の形態によれば、通信周期が距離単位のアプリケーションのほか、時間周期で定期的に情報を処理するアプリケーションも、通信不可区間のための通信を前倒しで実行できる。
 また、移動体の実際の移動速度が予定速度より遅くなった場合は、通信タイミングの時間間隔は長くなる。本実施の形態では、通信周期が時間単位のアプリケーションにも時間周期を移動距離に換算して通信タイミングを提供している。このため、本実施の形態によれば、渋滞により同一の通信を行う移動体が近隣に多数いる場合でも、通信の輻輳を軽減できる効果がある。
 また、本実施の形態では、通信要求毎に通信タイミングの前倒しにより発生する補正の許容最大量が指定される。そして、本実施の形態では、許容最大量以上の補正が必要な通信の前倒しは行われない。このため、本実施の形態によれば、アプリケーションが対応できないほど前倒しされた通信を回避することができる。
 また、本実施の形態では、一回の現在位置関連情報の受信時に生成する通信タイミング通知の個数が、通信要求の優先度順に指定される。このため、本実施の形態では、優先度の低い通信要求は次の現在位置関連情報の受信タイミングで送信される。従って、本実施の形態によれば、多数の通信要求の通信タイミングが重なって輻輳が発生することを避けることができる。
 尚、本実施の形態では、残距離と通信距離周期を比較することで、交差点の手前に通信周期分の時間を確保できるように通信タイミングを生成している。しかしながら、アプリケーションが、通信要求毎に、移動体が交差点に到達するまでに確保するべき時間を指定し、通信制御装置7が、その時間分の距離と残距離を比較するようにしてもよい。このようにすれば、通信周期とは異なる、アプリケーションの処理時間を、移動体が交差点に到達するまでに確保することができる。
実施の形態2.
 以上の実施の形態1では、通信不可区間の手前の通信区間での通信間隔を短くして、通信タイミングの前倒しを実施するようにしている。次に、本実施の形態では、通信不可区間のための通信を、手前の通信区間にて、通常の通信に並行して実施する例を示す。
 実施の形態2では、通信タイミングを通信不可区間の前に前倒しするときの、通信タイミングの生成方法が実施の形態1と異なる。
 実施の形態1では、通信制御装置7は、図27に示すように、P~P12の通信距離周期を同じ割合で縮めて、順番にデータを取得するようにしている。一方、実施の形態2では、通信制御装置7は、図28に示すように、通信が可能なP~Pについては普通に通信するように通信距離周期を設定する。また、通信制御装置7は、並行して、通信不可区間のP~P12の通信距離周期を前倒しに設定する。
 本実施の形態に係る方法では、本来通信ができる位置であるP~Pについては、実施の形態1と異なり、前倒しによる時間的な誤差なく通常通りに情報が取得できる。
 以下では、主に実施の形態1との差異を説明する。以下で説明していない事項は、実施の形態1と同じである。例えば、図1~図6、図8~図9については、実施の形態1と同一である。
***構成の説明***
 図19は実施の形態2のスケジュール格納部413のデータベース構造例を示す。
 リンク番号は、走行経路のリンク番号である。
 要求番号は、通信要求格納部412に格納された通信要求の番号である。
 優先度は、通信要求格納部412に格納された優先度である。
 通信距離周期は、通信要求の通信周期を移動距離に換算した値である。
 累積移動距離は、通信タイミングが前回アプリケーションに送信された後に移動体が移動した距離である。
 残距離は、リンクの終点位置までの残りの距離である。尚、残距離は、該当リンクの終点交差点フラグが1であり、通信要求の迂回考慮フラグが1である場合にのみ有効であり、それ以外の場合は0である。
 通信開始位置は、通信タイミングの生成を開始する位置の、リンクの先頭からの距離である。
 位置補正係数、位置補正定数および位置補正Δは、次回の通信タイミングにおいて、コンテンツサーバ1からデータを取得する際に指定する現在位置の補正値を示す。位置補正Δの経度および緯度の値を位置補正係数に乗算して得られる値に位置補正定数を加算して補正値を算出することができる。尚、補正なしの場合は位置補正係数=0である。
***動作の説明***
 次に、動作について説明する。
 実施の形態2では、スケジュール部403とタイミング処理部404以外の動作は実施の形態1と全く同一である。このため、スケジュール部403とタイミング処理部404の動作についてのみ説明する。
 スケジュール部403は、経路登録部401から呼び出されて、経路情報からスケジュールの生成を行う。この動作を図22及び図23のフローチャートに従って説明する。
 まず、スケジュール部403は、ステップS1901で、経路情報が経路格納部411に登録されているか確認する。
 経路情報が登録されていない場合、スケジュール部403は、ステップS1902で、経路情報がない場合のデフォルト条件で通信距離周期を算出する。デフォルト条件での通信距離周期の算出方法は、実施の形態1と同一である。
 次に、スケジュール部403は、ステップS1903で、算出した通信距離周期を、要求番号とともにリンク番号0で登録する。尚、スケジュール部403は、累積移動距離の初期値は0m、残距離は0m、通信開始位置は0m、優先度は通信要求の優先度、位置補正係数、位置補正定数、位置補正Δは0として登録する。
 次に、ステップS1901で経路情報が経路格納部411に登録されている場合、スケジュール部403は、ステップS1904で、経路の先頭リンクから通常の距離周期の登録を開始する。
 まず、スケジュール部403は、ステップS1905で、処理中のリンクが通信不可リンクか否かを道路属性から判断する。
 処理中のリンクが通信不可リンクでないなら、スケジュール部403は、ステップS1906で、通信要求の通信周期から通信距離周期を計算する。図6の要求番号3のように通信周期が距離単位の場合、スケジュール部403は、そのまま通信周期を通信距離周期として扱う。図6の要求番号1のように通信周期が時間単位の場合、スケジュール部403は、該当リンクの予定速度に通信周期を乗算し、通信距離周期を算出する。
 次に、スケジュール部403は、ステップS1907で、通信要求の迂回考慮フラグを確認する。
 迂回考慮フラグが0でない場合、処理がステップS1908に移行し、スケジュール部403は、該当リンクの終点交差点フラグを確認する。
 終点交差点フラグが0でない場合、スケジュール部403は、ステップS1910で、残距離として(リンクの距離-リンクの予定速度×1秒)を使用する。尚、1秒はカーナビゲーション装置8が現在位置関連情報を送信する周期である。
 一方で、ステップS1907で迂回考慮フラグが0、もしくはステップS1908で終点交差点フラグが0の場合、経路上の迂回可能な分岐点を考慮する必要はないので、スケジュール部403は、ステップS1909で残距離の値を0に設定する。
 次に、スケジュール部403は、ステップS1911で、以上の結果を踏まえてスケジュール格納部413にスケジュールを登録する。このとき、スケジュール部403は、リンク番号には現在のリンク番号を登録する。また、スケジュール部403は、要求番号には現在処理中の通信要求の要求番号を登録する。また、スケジュール部403は、優先度には現在処理中の通信要求の優先度を登録する。また、スケジュール部403は、通信距離周期にはステップS1906で算出した通信距離周期を登録する。また、スケジュール部403は、累積移動距離には0mを登録する。また、スケジュール部403は、残距離にはステップS1909またはステップS1910で決定した残距離を登録する。また、スケジュール部403は、通信開始位置、位置補正係数、位置補正定数、位置補正Δには0を登録する。
 スケジュール部403は、以上の処理をステップS1912において経路の全リンクについて実行する。
 次に、スケジュール部403は、ステップS1913から通信不可リンクの調整スケジュールの登録を開始する。
 まず、スケジュール部403は、ステップS1914で、経路上の連続する通信不可のリンクの列、即ち通信不可リンク列を検索する。
 次に、ステップS1915で通信不可リンク列が見つかったら、スケジュール部403は、ステップS1916で、通信不可リンク列のスケジュールをスケジュール格納部413に登録する。
 スケジュール部403は、この処理をステップS1917で全経路について実施する。
 ステップS1916で実施する、通信不可リンク列のスケジュールを登録する処理の詳細を図24及び図25のフローチャートに従って説明する。
 まず、スケジュール部403は、ステップS2001において通信要求の許容補正量から、許容補正距離量を計算する。通信要求の許容補正量が距離単位であれば、スケジュール部403は許容補正量をそのまま使用する。許容補正量が時間単位であれば、スケジュール部403は通信不可リンク列の予定速度の平均値を求め、求めた平均値に許容補正量(時間)を乗算した値を許容補正距離量として使用する。
 次に、スケジュール部403は、ステップS2002で、通信不可リンク列の全長を経路格納部411の距離から算出する。
 次に、スケジュール部403は、ステップS2003で、許容補正距離量と通信不可リンク列の全長を比較する。
 通信不可リンク列の全長が許容補正距離量より長い場合は、スケジュール部403は、ステップS2004で、通信不可リンク列の全長を許容補正距離量に修正する。
 次に、スケジュール部403は、ステップS2005で、調整リンクとして通信不可リンク列の先頭のリンクの、経路上1つ前のリンクを設定する。
 次に、スケジュール部403は、ステップS2006で、調整リンクの距離と通信不可リンク列の全長を比較する。
 通信不可リンク列全長のほうが長かったら、スケジュール部403は、ステップS2007で、通信開始位置を0に設定する。
 次に、スケジュール部403は、ステップS2008で、通信不可リンク列の全長から調整リンクの距離を減算する。
 一方、ステップS2006で通信不可リンク列全長が通信不可リンク列の全長以上であったら、スケジュール部403は、ステップS2009で、通信不可リンク列の全長と調整リンクの距離の差分を計算し、得られた差分の値を通信開始位置に設定する。
 次に、スケジュール部403は、ステップS2010で、通信不可リンク列の全長を0に設定する。つまり、スケジュール部403は、通信不可リンク列の全ての区間のスケジュール調整が終了したことを登録する。
 そして、スケジュール部403は、ステップS2011で通信距離周期を計算する。図6の要求番号3のように通信周期が距離単位の場合、スケジュール部403は、そのまま通信周期を通信距離周期として使用する。図6の要求番号1のように通信周期が時間単位の場合、スケジュール部403は、該当リンクの予定速度に通信周囲を乗算し、通信距離周期を算出する。
 次に、スケジュール部403は、ステップS2012で、位置補正パラメータを決定する。具体的には、スケジュール部403は、まず、補正リンクの通信開始位置の緯度と経度を算出する。つまり、スケジュール部403は、補正リンクの始点から終点に向かって通信開始位置分移動した緯度:Axと経度:Ayを算出する。次に、スケジュール部403は、この地点に対応する通信不可リンク列の緯度:A’xと経度:A’yを算出する。つまり、スケジュール部403は、通信不可リンク列の先頭リンクの始点からリンク列をたどりながら、通信不可リンク列の先頭リンクの始点から通信不可リンク列の全長分移動して得られる地点の経度と緯度を算出する。次に、スケジュール部403は、補正リンクの終点の緯度と経度をそれぞれBx、Byとして扱う。次に、スケジュール部403は、緯度Bxと経度Byに対応する通信不可リンク列の位置の緯度B’xと経度B’yを算出する。つまり、スケジュール部403は、通信不可リンク列の先頭リンクの始点からリンク列をたどりながら、通信不可リンク列の先頭リンクの始点から(通信不可リンク列の全長+補正リンクの距離-通信開始位置)分、移動して得られる位置の緯度と経度を算出する。そして、スケジュール部403は、以下の計算を行う。尚、N=(補正リンクの距離-通信開始位置)÷通信距離周期である。また、位置補正定数は1とする。
Figure JPOXMLDOC01-appb-M000002
 次に、スケジュール部403は、ステップS2013で、調整リンクの部分において通信不可リンク列のための調整したスケジュールをスケジュール格納部413に登録する。具体的には、スケジュール部403は、リンク番号には調整リンクのリンク番号を登録する。また、スケジュール部403は、要求番号及び優先度には現在処理中の通信要求の要求番号及び優先度を登録する。また、スケジュール部403は、通信距離周期にはステップS2012で計算した通信距離周期を登録する。また、スケジュール部403は、累積移動距離には0、残距離には0を登録する。また、スケジュール部403は、通信開始位置にはステップS2008またはステップS2010で決定した通信開始位置を登録する。また、スケジュール部403は、位置補正係数、位置補正定数、位置補正ΔにはステップS2012で決定した値を登録する。
 そして、スケジュール部403は、ステップS2014で、調整リンクに現在の調整リンクの経路上の1つ前のリンクを設定する。
 次に、スケジュール部403は、ステップS2015で、通信不可リンク列全長が0でない、つまり、スケジュールの調整が終わっていないかを確認する。
 スケジュールの調整が終わっていない場合、スケジュール部403は、ステップS2006に戻って、スケジュール調整が終わるまで上記の処理を繰り返す。
 ステップS2006からステップS2013までの処理を、図29の走行ルートに適用した例を説明する。ここで、許容補正距離量は500mとする。このとき、トンネル区間であるL3およびL4の全長が500mを超えているので、通信不可リンク区間の全長は500mとなる。
 最初に、補正リンクとしてL2が処理される。L2は400mなので、ステップS2006で通信不可リンク区間の全長より短いと判定される。このため、ステップ2007で通信開始位置は0mと判定される。そして、ステップS2008で通信不可リンク区間の全長から400mが減算されるので、通信不可リンク区間の全長は100mとなる。
 次に、ステップS2011で通信処理周期が計算される。
 そして、ステップS2012で位置パラメータが計算されるが、通信開始位置は0mなので、L2の緯度Axと経度Ayは、それぞれL2の先頭位置の緯度と経度となる。
 次に、緯度A’xと経度A’yが求められる。この時、通信不可リンク区間の全長は、100mなので、通信不可区間の先頭であるL3の先頭から、100mの位置の緯度と経度が、L2の緯度A’xおよび経度A’yとなる。
 次に、L2の終点の緯度と経度がそれぞれ緯度Bx、経度Byと求められる。
 そして、緯度B’xと経度B’yが求められる。ここで通信不可リンク区間の全長が100m、L2の距離が400m、通信開始位置は0mなので、L3の先頭位置からリンクをたどって500mの位置が補正後の通信不可区間の終点となる。
 以上の値を用いて、位置補正パラメータが決定され、ステップS2013で調整スケジュールがスケジュール格納部413に登録される。
 ここで、L2の処理は終了し、次に、S2014よりL1の処理が開始される。S2015で通信不可リンク列の全長は100mであり、0mではないので、L1についても、補正リンクとする必要があることが決定される。
 まず、ステップS2006でL1は300mであり、通信不可リンク区間の全長100mより長いため、ステップS2009で通信開始位置は通信不可リンク区間とL2の距離の差分である200mと設定される。そして、ステップS2010で通信不可リンク列の全長が0mと設定される。
 次に、ステップS2011で通信処理周期が計算される。
 そして、ステップS2012で位置パラメータが計算されるが、通信開始位置は200mなので、L1の緯度Axと経度Ayは、それぞれL1の先頭位置から200m前方の位置の緯度と経度となる。
 次に、緯度A’xと経度A’yが求められる。この時、通信不可リンク区間の全長は、0mになっているので、通信不可区間の先頭であるL3の先頭位置の緯度と経度がL1の緯度A’xと経度A’yとなる。
 次に、L1の終点の緯度と経度が、それぞれ緯度Bxと経度Byと求められる。
 そして、緯度B’xと経度B’yが求められる。ここで、通信不可リンク区間の全長が0m、L2の距離が400m、通信開始位置が0mなので、L3の先頭位置からリンクをたどって100mの位置の緯度と経度が、L1の緯度B’xと経度B’yになる。
 以上の値を用いて位置補正パラメータが決定され、ステップS2013で調整スケジュールがスケジュール格納部413に登録される。
 ここで、L1の処理は終了する。この時点で通信不可リンク区間の全長は0mとなっているため、ステップS2015で補正リンクの処理は終了したと判定される。
 以上のように、スケジュール部403は、経路情報からスケジュールの登録のための処理を実施する。そして、経路情報を受信した際の、通信制御装置7の動作は終了する。
 次に、タイミング処理部404の動作を説明する。
 タイミング処理部404が現在位置関連情報を受け取ると、図20及び図21のフローチャートに従って処理を行う。
 まず、タイミング処理部404は、ステップS1800で、通信する通信イベント数を示すカウンタを0に設定する。
 次に、タイミング処理部404は、ステップS1801で、スケジュール格納部413の各データにおいて、リンク番号が現在位置関連情報の現リンク番号と一致するかを確認する。
 リンク番号が現在位置関連情報の現リンク番号と一致した場合、タイミング処理部404は、ステップS1802でそのデータの累積移動距離に現在位置関連情報の移動距離を加算する。
 次にステップS1803で、タイミング処理部404は、通信開始位置が0か確認する。通信開始位置が0の場合、そのリンクでの通信は開始して良いので、処理はステップS1807に移行する。
 一方、通信開始位置が0でない場合は、タイミング処理部404は、ステップS1804で、通信開始位置を移動体が通過しているか確認する。
 累積移動距離が通信開始位置未満である場合、移動体はまだ通信開始地点を通過していないので、処理はステップS1821に移行する。
 累計移動距離が通信開始位置以上である場合、移動体は通信開始位置を通過しているので、タイミング処理部404は、まずステップS1805で通信開始位置に0を設定して、そのリンクの通信開始位置を通過済みであることを登録する。
 次に、タイミング処理部404は、ステップS1806で、累積移動距離から通信開始位置を減算して、通信開始位置からの累積移動距離を登録する。
 次に、ステップS1807で累積移動距離が通信距離周期を超えた場合、タイミング処理部404は、まず、ステップS1813でカウンタに1を加算する。
 次に、タイミング処理部404は、ステップS1814でカウンタの値が規定値以下か否かを確認する。カウンタの値が規定値を超えている場合はこれ以上通信イベントを設定できないので、処理はステップS1820に移行する。
 一方、カウンタの値が規定値以下の場合、タイミング処理部404は、ステップS1815からの通信タイミング通知の生成処理を行う。
 まず、タイミング処理部404は、ステップS1815で累積移動距離を0に設定する。
 次に、タイミング処理部404は、ステップS1816で位置補正係数が0かどうかを確認する。
 位置補正係数が0の場合は、タイミング処理部404は、ステップS1817で現在位置関連情報の現在位置をデータ取得位置に決定する。
 また、位置補正係数が0でない場合は、タイミング処理部404は、ステップS1818で、位置補正係数を位置補正Δに乗算する。更に、タイミング処理部404は、乗算値に位置補正定数を加算した値を現在位置情報に加えて通信タイミングの調整により変更された通信タイミングの位置の変更前の位置を算出し、これをデータ取得位置とする。
 次に、タイミング処理部404は、ステップS1819でスケジュール格納部413の位置補正係数に1を加える。
 そして、タイミング処理部404は、ステップS1820で、図9に示す通信タイミング通知を生成し、生成した通信タイミング通知を車載LAN通信部402に送信する。
 また、ステップS1807で累積移動距離が通信距離周期未満であった場合、タイミング処理部404は、ステップS1808で残距離を確認する。
 残距離が0でなかった場合は、タイミング処理部404は、残距離から移動距離を減算する。その結果、ステップS1810で残距離が通信距離周期以下になった場合、次回の通信周期時には次の交差点までの距離が通信要求周期未満になってしまうので、タイミング処理部404は、ステップS1811で残距離を0に設定する。
 また、ステップS1812で、タイミング処理部404はカウンタに1を加算する。
 そして、タイミング処理部404は、前倒しで通信タイミングが到来したと判定し、処理がステップS1815に進む。
 以後、タイミング処理部404は、前述と同様にステップS1815以降の処理を実施する。
 スケジュール部403とタイミング処理部404が以上のように動作することで、カーナビゲーション装置8及びRSE装置9にコンテンツサーバ1との通信タイミングを提供することができる。
***実施の形態の効果の説明***
 以上のように、本実施の形態では、通信制御装置7が、カーナビゲーション装置8又はRSE装置9に搭載されたアプリケーションに対して通信不可区間のための通信を事前に実施するように調整した通信タイミングを提供する。このため、本実施の形態によれば、サーバが全移動体の通信制御を行わずに済み、サーバの処理を削減できる。
 また、本実施の形態では、カーナビゲーション装置8又はRSE装置9に搭載された複数のアプリケーションは、通信制御装置7に通信要求を行うことで通信不可区間のための調整済みの通信タイミングを得ることができる。このため、本実施の形態によれば、個々のアプリケーションで移動体の経路を意識した通信制御を行う必要がなく、個々のアプリケーションの処理を削減できる。
 また、本実施の形態では、通信不可区間のための通信を事前に行う場合に、通信制御装置7が、コンテンツサーバ1に対してデータを要求する際の位置情報の補正値、すなわち通信タイミングを前倒しする前の元の位置情報をアプリケーションに通知する。このため、本実施の形態によれば、アプリケーションが通信不可区間を避けて前もってコンテンツサーバ1にデータを要求する場合でも、アプリケーションは、通信不可区間の位置に関するコンテンツデータを取得することができる。
 また、本実施の形態では、移動体の迂回や経路変更に関連するアプリケーションに、修正された通信タイミングが通知される。より具体的には、本実施の形態では、リンクの終点が交差点である場合に、残距離と通信距離周期とが比較される。そして、残距離すなわち交差点までの距離が通信距離周期より短くなった場合には、前倒しで通信タイミングがアプリケーションに通知される。このため、本実施の形態によれば、移動体が交差点に達するまでにアプリケーションは十分な処理時間を確保できる。
 また、本実施の形態では、通信周期が時間単位のアプリケーションにも時間周期を移動距離に換算して通信タイミングを提供している。このため、本実施の形態によれば、通信周期が距離単位のアプリケーションのほか、時間周期で定期的に情報を処理するアプリケーションも、通信不可区間のための通信を前倒しで実行できる。
 また、移動体の実際の移動速度が予定速度より遅くなった場合は、通信タイミングの時間間隔は長くなる。本実施の形態では、通信周期が時間単位のアプリケーションにも時間周期を移動距離に換算して通信タイミングを提供している。このため、本実施の形態によれば、渋滞により同一の通信を行う移動体が近隣に多数いる場合でも、通信の輻輳を軽減できる効果がある。
 また、本実施の形態では、通信要求毎に通信タイミングの前倒しにより発生する補正の許容最大量が指定される。そして、本実施の形態では、許容最大量以上の補正が必要な通信の前倒しは行われない。このため、アプリケーションが対応できないほど前倒しされた通信を回避することができる。
 また、本実施の形態では、一回の現在位置関連情報の受信時に生成する通信タイミング通知の個数が、通信要求の優先度順に指定される。このため、本実施の形態では、優先度の低い通信要求は次の現在位置関連情報の受信タイミングで送信される。従って、本実施の形態によれば、多数の通信要求の通信タイミングが重なって輻輳が発生することを避けることができる。
 尚、本実施の形態では、残距離と通信距離周期を比較することで、交差点の手前に通信周期分の時間を確保できるように通信タイミングを生成している。しかしながら、アプリケーションが、通信要求毎に、移動体が交差点に到達するまでに確保するべき時間を指定し、通信制御装置7が、その時間分の距離と残距離を比較するようにしてもよい。このようにすれば、通信周期とは異なる、アプリケーションの処理時間を、移動体が交差点に到達するまでに確保することができる。
 以上、本発明の実施の形態について説明したが、これら2つの実施の形態を組み合わせて実施しても構わない。
 あるいは、これら2つの実施の形態のうち、1つを部分的に実施しても構わない。
 あるいは、これら2つの実施の形態を部分的に組み合わせて実施しても構わない。
 なお、本発明は、これらの実施の形態に限定されるものではなく、必要に応じて種々の変更が可能である。
***ハードウェア構成の説明***
 最後に、通信制御装置7のハードウェア構成の補足説明を行う。
 ROM302には、OS(Operating System)が記憶されている。
 そして、OSの少なくとも一部がCPU301により実行される。
 CPU301はOSの少なくとも一部を実行しながら、経路登録部401、車載LAN通信部402、スケジュール部403、タイミング処理部404、通信要求登録部405の機能を実現するプログラムを実行する。
 CPU301がOSを実行することで、タスク管理、メモリ管理、ファイル管理、通信制御等が行われる。
 また、経路登録部401、車載LAN通信部402、スケジュール部403、タイミング処理部404、通信要求登録部405の処理の結果を示す情報、データ、信号値及び変数値の少なくともいずれかが、ROM302、RAM303、CPU301内のレジスタ及びキャッシュメモリの少なくともいずれかに記憶される。
 また、経路登録部401、車載LAN通信部402、スケジュール部403、タイミング処理部404、通信要求登録部405の機能を実現するプログラムは、磁気ディスク、フレキシブルディスク、光ディスク、コンパクトディスク、ブルーレイ(登録商標)ディスク、DVD等の可搬記録媒体に格納されていてもよい。
 また、経路登録部401、車載LAN通信部402、スケジュール部403、タイミング処理部404、通信要求登録部405の「部」を、「回路」又は「工程」又は「手順」又は「処理」に読み替えてもよい。
 また、通信制御装置7は、処理回路により実現されてもよい。処理回路は、例えば、ロジックIC(Integrated Circuit)、GA(Gate Array)、ASIC(Application Specific Integrated Circuit)、FPGA(Field-Programmable Gate Array)である。
 この場合は、経路登録部401、車載LAN通信部402、スケジュール部403、タイミング処理部404、通信要求登録部405は、それぞれ処理回路の一部として実現される。
 なお、本明細書では、プロセッサと、メモリと、プロセッサとメモリの組合せと、処理回路との上位概念を、「プロセッシングサーキットリー」という。
 つまり、プロセッサと、メモリと、プロセッサとメモリの組合せと、処理回路とは、それぞれ「プロセッシングサーキットリー」の具体例である。
 1 コンテンツサーバ、2 移動体、2a 移動体、2b 移動体、2c 移動体、3 公衆網、4a 走行経路、4b 走行経路、4c 走行経路、5a 出発地、5b 出発地、5c 出発地、6a 目的地、6b 目的地、6c 目的地、7 通信制御装置、8 カーナビゲーション装置、9 RSE装置、10 車載LAN、301 CPU、302 ROM、303 RAM、304 車載LANインタフェース、401 経路登録部、402 車載LAN通信部、403 スケジュール部、404 タイミング処理部、405 通信要求登録部、411 経路格納部、412 通信要求格納部、413 スケジュール格納部、414 位置情報格納部。

Claims (12)

  1.  外部装置と通信を行う複数のアプリケーションプログラムが実装された移動体に搭載される通信制御装置であって、
     アプリケーションプログラムごとに規定されている、各アプリケーションプログラムが前記外部装置と通信する際の距離周期である通信距離周期と、前記移動体の移動経路とに基づき、アプリケーションプログラムごとに、各アプリケーションプログラムが前記外部装置と通信を行う通信タイミングを前記移動経路上の位置でスケジューリングするスケジュール部と、
     アプリケーションプログラムごとに、前記移動体が通信タイミングの位置に到達したか否かを判定し、いずれかのアプリケーションプログラムについて前記移動体が通信タイミングの位置に到達した場合に、対応するアプリケーションプログラムに通信タイミングが到来したことを通知するタイミング処理部とを有する通信制御装置。
  2.  前記スケジュール部は、
     アプリケーションプログラムごとに、各アプリケーションプログラムの通信距離周期に従って通信タイミングの位置を設定し、
     前記移動経路上に前記複数のアプリケーションプログラムが前記外部装置と通信できない通信不可区間がある場合に、アプリケーションプログラムごとに、前記通信不可区間内に通信タイミングの位置が設定されているか否かを判定し、
     前記通信不可区間内に通信タイミングの位置が設定されているアプリケーションプログラムが存在する場合に、当該アプリケーションプログラムについて、前記通信不可区間内に設定されている通信タイミングの位置を前記通信不可区間の手前の位置に変更する請求項1に記載の通信制御装置。
  3.  前記タイミング処理部は、
     いずれかのアプリケーションプログラムについて前記移動体が通信タイミングの位置に到達した場合に、対応するアプリケーションプログラムに通信タイミングが到来したことを通知するとともに、前記スケジュール部が当該通信タイミングの位置を変更していない場合は、対応するアプリケーションプログラムに当該通信タイミングの位置を通知し、前記スケジュール部が当該通信タイミングの位置を変更している場合は、対応するアプリケーションプログラムに変更前の通信タイミングの位置を通知する請求項2に記載の通信制御装置。
  4.  前記スケジュール部は、
     前記通信不可区間内に複数の通信タイミングの位置が設定されているアプリケーションプログラムが存在する場合に、当該アプリケーションプログラムについて、前記通信不可区間内に設定されている複数の通信タイミングの位置を前記通信不可区間の手前の複数の位置に変更する請求項2に記載の通信制御装置。
  5.  前記スケジュール部は、
     前記通信不可区間内に通信タイミングの位置が設定されているアプリケーションプログラムが存在する場合に、当該アプリケーションプログラムについて、前記通信不可区間の手前の通信可能区間における通信タイミングの位置を前記通信距離周期よりも短い距離周期にて設定して、前記通信不可区間内に設定されている通信タイミングの位置を前記通信可能区間内の位置に変更する請求項2又は3に記載の通信制御装置。
  6.  前記スケジュール部は、
     前記通信不可区間内に通信タイミングの位置が設定されているアプリケーションプログラムが存在する場合に、当該アプリケーションプログラムについて、前記通信不可区間の手前の通信可能区間における通信タイミングの位置を変更せずに、前記通信不可区間内に設定されている通信タイミングの位置を前記通信可能区間内の位置に変更する請求項2又は3に記載の通信制御装置。
  7.  前記スケジュール部は、
     アプリケーションプログラムごとに、各アプリケーションプログラムの通信距離周期に従って通信タイミングの位置を設定し、
     前記移動経路上に交差点がある場合に、アプリケーションプログラムごとに、前記交差点の手前の区間であって前記交差点から規定距離以内の区間である交差点手前区間に通信タイミングの位置が設定されているか否かを判定し、
     前記交差点手前区間内に通信タイミングの位置が設定されているアプリケーションプログラムが存在する場合に、当該アプリケーションプログラムについて、前記交差点手前区間内に設定されている通信タイミングの位置を前記交差点手前区間の手前の位置に変更する請求項1~3のいずれか1項に記載の通信制御装置。
  8.  前記スケジュール部は、
     前記通信不可区間内に通信タイミングの位置が設定されているアプリケーションプログラムが存在し、当該アプリケーションプログラムについて、前記通信不可区間内に設定されている通信タイミングの位置を前記通信不可区間の手前の位置に変更すると、変更量が閾値を超える場合には、前記通信不可区間内に設定されている通信タイミングの位置を変更しない請求項2又は3に記載の通信制御装置。
  9.  前記スケジュール部は、
     前記交差点手前区間内に通信タイミングの位置が設定されているアプリケーションプログラムが存在し、当該アプリケーションプログラムについて、前記交差点手前区間内に設定されている通信タイミングの位置を前記交差点手前区間の手前の位置に変更すると、変更量が閾値を超える場合には、前記交差点手前区間内に設定されている通信タイミングの位置を変更しない請求項7に記載の通信制御装置。
  10.  前記タイミング処理部は、
     2以上のアプリケーションプログラムに通信タイミングの位置として同一の位置が設定されている場合に、当該2以上のアプリケーションプログラムの中から、優先順位が高い順に規定個数のアプリケーションプログラムを選択し、選択したアプリケーションプログラムにのみ、通信タイミングが到来したことを通知する請求項1~3のいずれか1項に記載の通信制御装置。
  11.  外部装置と通信を行う複数のアプリケーションプログラムが実装された移動体に搭載されるコンピュータが、アプリケーションプログラムごとに規定されている、各アプリケーションプログラムが前記外部装置と通信する際の距離周期である通信距離周期と、前記移動体の移動経路とに基づき、アプリケーションプログラムごとに、各アプリケーションプログラムが前記外部装置と通信を行う通信タイミングを前記移動経路上の位置でスケジューリングし、
     前記コンピュータが、アプリケーションプログラムごとに、前記移動体が通信タイミングの位置に到達したか否かを判定し、いずれかのアプリケーションプログラムについて前記移動体が通信タイミングの位置に到達した場合に、対応するアプリケーションプログラムに通信タイミングが到来したことを通知する通信制御方法。
  12.  外部装置と通信を行う複数のアプリケーションプログラムが実装された移動体に搭載されるコンピュータに、
     アプリケーションプログラムごとに規定されている、各アプリケーションプログラムが前記外部装置と通信する際の距離周期である通信距離周期と、前記移動体の移動経路とに基づき、アプリケーションプログラムごとに、各アプリケーションプログラムが前記外部装置と通信を行う通信タイミングを前記移動経路上の位置でスケジューリングするスケジュール処理と、
     アプリケーションプログラムごとに、前記移動体が通信タイミングの位置に到達したか否かを判定し、いずれかのアプリケーションプログラムについて前記移動体が通信タイミングの位置に到達した場合に、対応するアプリケーションプログラムに通信タイミングが到来したことを通知するタイミング処理とを実行させる通信制御プログラム。
PCT/JP2017/041240 2017-11-16 2017-11-16 通信制御装置、通信制御方法及び通信制御プログラム WO2019097623A1 (ja)

Priority Applications (5)

Application Number Priority Date Filing Date Title
PCT/JP2017/041240 WO2019097623A1 (ja) 2017-11-16 2017-11-16 通信制御装置、通信制御方法及び通信制御プログラム
CN201780096692.6A CN111344758B (zh) 2017-11-16 2017-11-16 通信控制装置、通信控制方法及计算机可读取的记录介质
JP2019554108A JP6641073B2 (ja) 2017-11-16 2017-11-16 通信制御装置、通信制御方法及び通信制御プログラム
DE112017008085.1T DE112017008085B4 (de) 2017-11-16 2017-11-16 Kommunikationssteuerungseinrichtung, kommunikationssteuerungsverfahren und kommunikationssteuerungsprogramm
US16/647,849 US20200225052A1 (en) 2017-11-16 2017-11-16 Communication control device, communication control method, and computer readable medium

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
PCT/JP2017/041240 WO2019097623A1 (ja) 2017-11-16 2017-11-16 通信制御装置、通信制御方法及び通信制御プログラム

Publications (1)

Publication Number Publication Date
WO2019097623A1 true WO2019097623A1 (ja) 2019-05-23

Family

ID=66538555

Family Applications (1)

Application Number Title Priority Date Filing Date
PCT/JP2017/041240 WO2019097623A1 (ja) 2017-11-16 2017-11-16 通信制御装置、通信制御方法及び通信制御プログラム

Country Status (5)

Country Link
US (1) US20200225052A1 (ja)
JP (1) JP6641073B2 (ja)
CN (1) CN111344758B (ja)
DE (1) DE112017008085B4 (ja)
WO (1) WO2019097623A1 (ja)

Citations (6)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2003309511A (ja) * 2002-04-16 2003-10-31 Denso Corp 移動無線通信機
JP2004193995A (ja) * 2002-12-11 2004-07-08 Seiko Epson Corp 情報配信システム及び情報配信方法
JP2010048797A (ja) * 2008-07-23 2010-03-04 Mitsubishi Electric Corp 情報処理装置及びプログラム
JP2010183178A (ja) * 2009-02-03 2010-08-19 Denso Corp 車載通信装置
WO2013179557A1 (ja) * 2012-05-30 2013-12-05 パナソニック株式会社 無線装置
JP2014529956A (ja) * 2011-08-24 2014-11-13 マイクロソフト コーポレーション 通信を知的に選択するための予測技術の使用

Family Cites Families (9)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JPS5430235B2 (ja) 1973-08-30 1979-09-28
JP2001272237A (ja) * 2000-03-23 2001-10-05 Sanyo Electric Co Ltd ナビゲーション装置
JP2005127855A (ja) * 2003-10-23 2005-05-19 Navitime Japan Co Ltd ナビゲーション装置、ナビゲーション方法、ナビゲーションプログラム
JP2005134427A (ja) * 2003-10-28 2005-05-26 Pioneer Electronic Corp 交通状況報知装置、そのシステム、その方法、そのプログラム、および、そのプログラムを記録した記録媒体
JP6004864B2 (ja) * 2012-09-25 2016-10-12 三菱重工業株式会社 移動体通信システム、移動体通信方法、移動局、プログラム、及び記録媒体
US9432961B2 (en) 2013-01-16 2016-08-30 Apple Inc. Location-assisted service capability monitoring
JP5933110B2 (ja) * 2013-03-01 2016-06-08 三菱電機株式会社 通信装置及び制御装置及びプログラム
WO2014208154A1 (ja) * 2013-06-28 2014-12-31 アイシン・エィ・ダブリュ株式会社 位置情報共有システム、位置情報共有方法、及び位置情報共有プログラム
US9332396B2 (en) * 2014-03-17 2016-05-03 Visa International Service Association Systems and methods to provide location-dependent information during an optimal time period

Patent Citations (6)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2003309511A (ja) * 2002-04-16 2003-10-31 Denso Corp 移動無線通信機
JP2004193995A (ja) * 2002-12-11 2004-07-08 Seiko Epson Corp 情報配信システム及び情報配信方法
JP2010048797A (ja) * 2008-07-23 2010-03-04 Mitsubishi Electric Corp 情報処理装置及びプログラム
JP2010183178A (ja) * 2009-02-03 2010-08-19 Denso Corp 車載通信装置
JP2014529956A (ja) * 2011-08-24 2014-11-13 マイクロソフト コーポレーション 通信を知的に選択するための予測技術の使用
WO2013179557A1 (ja) * 2012-05-30 2013-12-05 パナソニック株式会社 無線装置

Also Published As

Publication number Publication date
CN111344758B (zh) 2021-11-19
JP6641073B2 (ja) 2020-02-05
DE112017008085B4 (de) 2022-08-11
CN111344758A (zh) 2020-06-26
JPWO2019097623A1 (ja) 2020-02-27
DE112017008085T5 (de) 2020-06-25
US20200225052A1 (en) 2020-07-16

Similar Documents

Publication Publication Date Title
EP2740280B1 (en) Providing wireless transmitter almanac information to mobile device based on expected route
US11164276B2 (en) Computer system arranging transport services for users based on the estimated time of arrival information
US9574887B2 (en) Method of calculating route, and method or device for obtaining route
US11118924B2 (en) Method and system for predicting traffic conditions
JP5430235B2 (ja) 情報処理装置及びプログラム
US9749930B2 (en) Method for delivering optimum path including plurality of passage places and apparatus therefor
US9903721B2 (en) Method for transferring route and device therefor
US9983017B2 (en) Route calculating method, route acquisition method or terminal for same
US9494431B2 (en) Method for acquiring or providing update information for route to third party and apparatus for same
JP2005063234A (ja) コンテンツ配信システムにおけるポータルサーバおよびキャッシュサーバ、ならびにコンテンツ配信方法、コンテンツ配信プログラム
WO2015070371A1 (en) Scheduling download of data of an on-line service
WO2019097623A1 (ja) 通信制御装置、通信制御方法及び通信制御プログラム
WO2016092616A1 (ja) データ提供システム
JP4707505B2 (ja) 分散処理システム、車載端末、及び分散処理システムにおける管理ノード決定方法
WO2008120164A2 (en) Data transmission
US9510265B2 (en) Routing method and a unit for communication between vehicles
KR20080076019A (ko) 최적 경로 제공 시스템 및 그 방법
JP2017062608A (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: 17932532

Country of ref document: EP

Kind code of ref document: A1

ENP Entry into the national phase

Ref document number: 2019554108

Country of ref document: JP

Kind code of ref document: A

122 Ep: pct application non-entry in european phase

Ref document number: 17932532

Country of ref document: EP

Kind code of ref document: A1