Abstract:
There is provided a navigation system having a guidance-controller, the guidance-controller controlling the sequence of guidances, and priority, according to an execution condition set depending on the type of a relevant guidance, while determining whether or not a guidance is executed according to the execution condition to thereby alter the teaching of guidance-execution. If overlapping by plural guidances using speech, and screen display occurs, the simple display of the guidance lower in priority is executed, and if the guidance falls outside an effective range, the guidance is interrupted, or the guidance during standby-display is not executed. Thereby, plural guidances are concurrently displayed, and a meaningless guidance is not displayed.

Description:
CLAIM OF PRIORITY 
       [0001]    The present application claims priority from Japanese patent application serial no. 2012-245156, filed on Nov. 7, 2012, the content of which is hereby incorporated by reference into this application. 
       BACKGROUND 
       [0002]    The present invention relates to a navigation system and a navigation method, for executing a guidance with speech and display and in particular to a navigation system and a navigation method, for outputting plural guidances for guidance events that have happened in an overlapping manner, and inhibiting a guidance that is meaningless to a user. 
         [0003]    In a vehicle navigation system for use in executing a path-guidance up to a destination, a guidance to a user, such as an approach to a crossover point, speeding, and receipt of traffic information, is often executed by means of speech and a screen display. A function has been known whereby a direction in which a user makes a turn is shown by means of a screen and speech, for example, immediately before a vehicle comes to a crossover point. Speech-outputting and screen display are executed whenever necessary on a event-by-event basis every time an event happens, the event being the cause thereof. For this reason, if a screen display based on a certain event is in the course of execution, and concurrently, another event on which another display is to be executed happens, this will lead to a situation where plural display requests are accumulated as a list. Accordingly, in the case where displays are sequentially shown in the order in which events have happened, it follows that the next display is shown after completion of an immediately preceding event. In consequence, timing of outputting speech and a screen display is provided after the vehicle has passed a location where the speech and the screen display are to be outputted, and therefore, there is a possibility that a guidance that is meaningless to a user is executed. To take an example, if speeding occurs in the course of the display of a guidance on a crossover point, and attention-attracting speech is outputted after completion of the display of the guidance on the crossover point, it is conceivable that the vehicle has already largely passed a location where the speeding occurred. 
         [0004]    Accordingly, a technology for controlling plural guidances for a user has been proposed. 
         [0005]    For example, with a navigation system disclosed in Japanese Unexamined Patent Application Publication No. 2002-236029, if the necessity of outputting a speech guidance having higher priority arises in the course of a certain speech guidance being outputted, the guidance being outputted at present is interrupted, and the speech guidance having higher priority is outputted. 
         [0006]    Further, with a navigation system disclosed in Japanese Unexamined Patent Application Publication No. 2006-267328, the order of speech-guidance priorities are pre-decided for every speech-guidance types, and in the case where a speech-guidance that is about to be outputted at present is outputted, determination is made on whether or not overlapping by a speech-guidance having higher priority will occur by a completion time of the outputting. If the overlapping by the speech-guidance having higher priority occurs, the speech guidance that is about to be outputted at present is not executed. Thereby, a speech-guidance having lower priority is prevented from being interrupted by the speech-guidance having higher priority. 
       SUMMARY 
       [0007]    In the navigation systems disclosed in Japanese Unexamined Patent Application Publication No. 2002-236029, and Japanese Unexamined Patent Application Publication No. 2006-267328, respectively, a problem exists in that if plural guidance-outputs overlap each other, which of the guidances is to be outputted is determined according to a preset priority, and a guidance lower in priority is interrupted or cancelled, so that the guidance lower in priority is not outputted. Further, if the guidance lower in priority is executed after a guidance higher in priority is outputted, a time when the guidance lower in priority is executed is delayed, thereby creating a problem of outputting information meaningless to a user. 
         [0008]    The invention has been developed in view of the problems described as above, and it is therefore an object of the invention to provide a navigation system and a navigation method, for outputting plural guidances for guidance events happened in an overlapping manner, and inhibiting a guidance meaningless to a user. 
         [0009]    To that end, according to one aspect of the present invention, there is provided a navigation system for executing a guidance with a screen display or speech, the navigation system comprising has a controller for generating the guidance depending on a state of a movable body with the navigation system mounted thereon, and a user interface for receiving supply of the guidance generated by the controller to thereby output the guidance with a screen display or speech to a user of the navigation system. If the controller has plural the guidances as generated, the controller determines a method whereby the user interface outputs a screen display or speech according to an execution condition set depending on the type of a relevant guidance. 
         [0010]    Further, according to another aspect of the present invention, there is provided a navigation method in a navigation system for executing a guidance with a screen display or speech, said navigation method comprising the steps of generating the guidance depending on a state of a movable body with the navigation system mounted thereon and outputting the guidance as generated to a user of the navigation system, by means of a screen display or speech. If the guidances generated exist, a method is determined whereby a screen display or speech is outputted according to an execution condition set depending on the type of the guidance. 
         [0011]    The present invention can provide a navigation system and a navigation method, for outputting plural guidances for guidance events that have happened in an overlapping manner, and inhibiting a guidance meaningless to a user, and the present invention has an advantageous effect of contributing to improvement in the operation of the navigation system. 
     
    
     
       BRIEF DESCRIPTION OF THE DRAWINGS 
         [0012]      FIG. 1  is a block diagram of a navigation system according to one embodiment of the invention; 
           [0013]      FIG. 2  is a view showing an example of a danger-area list; 
           [0014]      FIG. 3  is a block diagram showing a control operation by the navigation system of  FIG. 1 ; 
           [0015]      FIG. 4  is a view showing an example of an event-processing function table; 
           [0016]      FIG. 5  is a view showing the teaching of processing of the event-processing function by way of example; 
           [0017]      FIG. 6  is a view showing an example of a layout of the screen display of a guidance; 
           [0018]      FIG. 7  is a flow chart showing a procedure for event-generation; 
           [0019]      FIG. 8  is a flow chart showing a procedure for event-registration; 
           [0020]      FIG. 9  is a view showing one example of the teaching of registration in an event queue; 
           [0021]      FIG. 10  is a flow chart showing a procedure for event-control and the event-processing function; 
           [0022]      FIG. 11  is view showing one example of a calculation formula of a remaining distance up to tolerance; 
           [0023]      FIG. 12  is a view showing an example of a screen display when in the case of the normal-display; 
           [0024]      FIG. 13  is a view showing an example of a screen display when the normal display is executed concurrently with the simple display; 
           [0025]      FIG. 14  is a view showing an example of a screen display when the screen display reverts to a single display from the screen display shown in  FIG. 13 ; 
           [0026]      FIG. 15  is a view showing an example of a screen display when plural simple displays are present; 
           [0027]      FIG. 16  is a view showing an example of a screen display when the detail of the simple display in  FIG. 15  is displayed; 
           [0028]      FIG. 17  is a flow chart showing a procedure for the event-selection; 
           [0029]      FIG. 18  is a view showing an example of a flow, in which event-processing of an event lower in priority is resumed; 
           [0030]      FIG. 19  is a view showing an example of a flow, in which the sequence of the event-processing is controlled; and 
           [0031]      FIG. 20  is a view showing an example of a flow, in which the event-processing of an event lower in priority is not executed. 
       
    
    
     DETAILED DESCRIPTION 
       [0032]    An embodiment of a navigation system according to the invention is described hereinafter with reference to the accompanied drawings. 
         [0033]      FIG. 1  is a block diagram of a navigation system  10  according to one embodiment of the invention. 
         [0034]    The navigation system  10 , as one embodiment of an event control system according to the invention, has constituent elements including a CPU  101 , a main memory  102 , a speaker  104 , a display unit  105 , a time-position acquisition device  106 , a speed acquisition device  107 , and a secondary memory  117 , as shown in  FIG. 1 . These constituent elements are linked to an inner bus  103 . 
         [0035]    In the secondary memory  117 , there are stored programs including a time-position acquisition program  108 , a speed acquisition program  109 , a path-browsing program  110 , a path-guiding program  111 , an event-generation program  112 , an event-control program  113 , and an event-processing program  114 , these programs being loaded into the main memory  102  as necessary, and the CPU  101  is operated according to these programs, thereby executing an event-control processing, as described later on. 
         [0036]    Further, the event-processing program  114  incorporates partial programs including a danger-area warning program  1141 , a speeding warning program  1142 , a crossover-point guiding program  1143 , a destination-guiding program  1144 , and a danger-area passing-frequency counting program  1145 . 
         [0037]    Further, in the secondary memory  117 , there are stored a danger-area DB (Data Base)  115 , and a map DB  116 . The danger-area DB  115  holds a table for managing areas, through which a vehicle needs to pass with caution. The map DB  116  holds map data for use in a navigation carried out with the use of the path-browsing program  110 , and the path-guiding program  111 . 
         [0038]      FIG. 2  shows a real-world example of a danger-area list  201  that is stored in the danger-area DB  115 . The danger-areas are each designated as a circle, the center poison thereof being given in terms of latitude, and longitude, together with the length of a radius from the center position. 
         [0039]      FIG. 3  is a view conceptually showing an event-control operation by the navigation system  10  according to the present embodiment. 
         [0040]    A path-browsing unit  301 , a path-guiding unit  302 , a time-position acquisition unit  303 , a speed acquisition unit  304 , an event-generation unit  305 , an event-control unit  306 , and an event-processing unit  307  each are a functional unit of the CPU  101 , executing processing as follows: The path-browsing unit  301  works out a guidance path  308  on the basis of map data read out from the map DB  116 . The path-guiding unit  302  executes path-guiding up to a destination on the basis of the map data read out from the map DB  116 , and the guidance path  308 . The event-generation unit  305  generates an event from each-type event (hereinafter referred to as an event factor) having happened during path-guiding, and event-processing functions registered in an event-processing function table  309 , thereby adding the event to an event queue  310 . The event-control unit  306  controls the order of executions by the event queue  310  as generated, and the event-processing unit  307  executes actual event-processing, causing the speaker  104  serving as a user-interface to output speech, while causing the display unit  105  to display an image, thereby executing a guidance. The time-position acquisition unit  303  acquires a present time, and a position of a movable body, with the navigation system  10  mounted thereon, from the time-position acquisition device  106 . The speed acquisition unit  304  acquires a speed of the movable body, with the navigation system  10  mounted thereon, from the speed acquisition device  107 . 
         [0041]      FIG. 4  shows an example of the event-processing function table  309  for registering the teaching of processing to be executed for every event factors  401  happening during the path guidance. In the event-processing function table  309 , there are egistered the event factor  401 , an event-processing function  402  to be executed at the time of occurrence of the event factor  401 , an allowable condition  403  indicating a condition under which the event-processing function  402  is executed, and priority  404 . The allowable condition  403  is designated in terms of a distance, or a time length, from an event-happened position, or an event-happened time, as a starting point. At the time of starting up the navigation system  10  according to the event-processing program  114 , the event-processing function table  309  is prepared prior to a path-guidance to a destination. 
         [0042]      FIG. 5  shows the teaching of the processing of the event-processing function  402  by way of example. The event-processing function  402  has three teachings of processing, differing from each other, depending on a state in which the processing is executed. A normal-display processing  501  indicates the teaching of display-processing in the case where an event-processing function  402  has precedence over other event-processing functions  402  in execution of the processing. A simple display processing  502  indicates the teaching of processing in the case where the display-processing is executed while the other event-processing functions  402  are executed. A delayed-time processing  503  indicates the teaching of alternative processing to be executed with the other event-processing function  402  in the case where a relevant event-processing function  402  cannot be executed under the allowable condition  403 . The present embodiment of the invention has one feature in that the event-processing function  402  is provided with the simple display processing  502 , and the delayed-time processing  503 , as is evident from description given later on. 
         [0043]      FIG. 6  shows an example of display by the display unit  105  of the navigation system  10 , in the course of a path-guidance. A normal-display area  601  is an area for displaying the teaching of the normal-display processing  501  of the event-processing function  402 . A simple display area  602  is an area for displaying the teaching of the simple display processing  502  of the event-processing function  402 . A vehicle-position display  603  displays a position of a vehicle running at present on the map. 
         [0044]    Now, each processing executed by the navigation system  10  is described in detail hereinafter. 
         [0045]      FIG. 7  is a flow chart showing a procedure for event-generation. First, the event-generation unit  305  acquires a present position acquired by the time-position acquisition unit  303 . The event-generation unit  305  determines whether or not a crossover point on the map data has been reached (step S 701 ), and if the crossover point has been reached, event-registration, as described later on, is executed (step S 702 ). Further, the event-generation unit  305  determines whether or not a destination has been reached (step S 703 ), and if the destination has been reached, the event-registration is executed (the step S 702 ). Next, the event-generation unit  305  determines whether or not a preset speed has been exceeded on the basis of a speed acquired by the speed acquisition unit  304  (step S 704 ), and if the preset sped has been exceeded, the event-registration is executed (the step S 702 ). Next, the event-generation unit  305  compares the present position with the danger-area list  201  to thereby determine whether or not the vehicle has entered a danger area (step S 705 ). If the event-generation unit  305  determines that the vehicle has entered the danger area, the event-generation unit  305  works out a distance required to get out of the danger area, storing the distance (step S 706 ), before executing the event-registration (the step S 702 ). Thus, the event-generation unit  305  repeats processing for the event-registration until a navigation is completed (step S 707 ). 
         [0046]      FIG. 8  is a flow chart showing a procedure for the event-registration in the step S 702 . 
         [0047]    The time-position acquisition unit  303  acquires a present time and a position (step S 801 ). Next, the event-generation unit  305  acquires entry of the event-processing function  402  for processing an event factor  401  presently under processing from the event-processing function table  309  (step S 802 ). Plural the event-processing functions  402  may correspond to a certain event factor  401 . On the basis of the allowable condition  403  of each of the event-processing functions  402  as acquired, and the time as well as the position, acquired in the step S 801 , the event-generation unit  305  works out a tolerance  903  (described later on, in  FIG. 9 ) corresponding to the event factor  401  having occurred at present (step S 803 ) with reference to the event-processing function  402  acquired in the step S 802 . The event-generation unit  305  registers the entry for the event queue  310  on the basis of a tolerance  903  as worked out (step S 804 ). Next, a simple display processing  502  corresponding to each of the event-processing functions  402  is displayed in the simple display area  602 . 
         [0048]      FIG. 9  shows one example of the teaching of a registration in the event queue  310  at a certain point in time. This is an example in which the allowable condition  403  of onDangerAleert( ) as one of the event-processing functions  402  is defined as “from an event-happened point up to an end of a danger area”, so that the tolerance  903  with reference to this entry is defined 20 m as a difference in distance between the position acquired in the step S 801  and the terminal end of the danger area. Further, onSpeedExeeded ( ) is an example in which time is designated as the tolerance  903 . 
         [0049]      FIG. 10  is a flow chart showing a procedure for event-control. The event-control is executed by the event-control unit  306 . The procedure for the event-control is described hereinafter according to the flow chart shown in  FIG. 10 . The event-control unit  306  refers to the event queue  310  where the event is registered in an event-registration processing (the step S 702 ) of  FIG. 7 , determining whether or not an event has happened (step S 1001 ). If the event has happened (Yes, in the step S 1001 ), the event-control unit  306  executes event-selection processing, as described later on (step S 1002 ), thereby invoking an event-processing function as selected (step S 1003 ). 
         [0050]    Subsequently, the event-control unit  306  refers to the event queue  310 , determining whether or not an event identical in priority to the invoked event-processing function  402  or an event higher in priority than the invoked event-processing function  402  has happened (step S 1004 ). If no event has happened, the event-control unit  306  acquires a time, and a position from the time-position acquisition unit  303  (step S 1005 ), determining whether or not the time and the position have exceeded the tolerance  903  of the event-processing function  402  presently under execution (step S 1006 ). 
         [0051]      FIG. 11  is view showing one example of a calculation formula of a remaining distance up to the tolerance. In the step S 1006  of  FIG. 10 , the event-control unit  306  calculates a present position or a present time, and the remaining distance up to the tolerance  903  on the basis of the calculation formula shown in  FIG. 11 , determining that the tolerance  903  is not exceeded (that is, within the tolerance) if the remaining distance &gt;0. If the event-processing function  402  is not completed, the event-control unit  306  repeatedly executes processing from the step S 1004  through the step S 1006  (step S 1007 ). 
         [0052]    If an event with priority identical to, or higher than the invoked event-processing function  402  has happened in the step S 1004  (YES, in the step  1004 ), the event-control unit  306  executes the simple display processing  502  corresponding to the event-processing function  402  related to an event presently under processing to thereby display the simple display processing  502  in the simple display area  602  (step S 1008 ) before issuing a completion request to the event-processing function  402  (step S 1009 ). If the tolerance  903  is exceeded in the step S 1006 , the event-control unit  306  issues the completion request (the step S 1009 ). If the event-processing function  402  is completed in the step S 1007 , the event-control unit  306  frees the registration of a completed event from the event queue  310  (step S 1010 ). The event-control unit  306  repeatedly executes the processing from the step S 1001  through the step S 1010 , described as above, until a navigation is completed (step S 1011 ). 
         [0053]    The event-processing function  402  that has been started up in the step S 1003  executes a normal display in the normal-display area  601  according to the normal-display processing  501  (step S 1012 ). Thereafter, the normal display is repeatedly executed until a completion condition of the normal-display processing  501  is met or a completion notice from the event-control unit  306  is received (No, in step S 1013 ). In the case of Yes in the step  51013 , processing for the normal display is completed (step S 1014 ). 
         [0054]    For example, at a time when the event-control unit  306  executes the normal display related to a first event in the normal-display area  601  (the step S 1012 ) according to the flow chart described as above, if the event-control unit  306  determines that a second event higher in priority than the first event has happened (Yes, in the step S 1004 ), the event-control unit  306  controls such that a display related to the first event is executed in the simple display area  602  (the step S 1008 ), and the display related to the first event is completed (the step S 1009 ), and a display related to the second event is executed in the normal-display area  601  (the step S 1012 ). Upon the completion of the normal display related to the second event (the step S 1014 ), the normal display related to the first event can be executed again (the step S 1012 ). 
         [0055]    Thereby, the display of information high in priority is executed in the normal-display area  601  of the display unit  105 , thereby solving a problem that displaying timing is missed to end up executing a meaningless display. Furthermore, information even though it is low in priority can be displayed in the simple display area  602 , thereby solving a problem that a display is not executed at all or displaying timing is missed to thereby execute a meaningless display. 
         [0056]      FIG. 12  shows an example of a screen display when the normal-display processing  501  is executed in the step S 1012 . 
         [0057]      FIG. 13  shows an example of a screen display when alteration from the normal display to the simple display is made in the step S 1008 , and subsequently, the normal display of an event-processing function higher in priority is executed in the step S 1012 . 
         [0058]      FIG. 14  shows an example of a screen display when an event-processing function higher in priority is completed in the step S 1014 , and subsequently, the event-processing function that was originally executed in the step S 1001  is selected, and the normal display is resumed in the step S 1012 . 
         [0059]      FIG. 15  shows an example of a screen display indicating that plural notices exist if plural events are present in the course of the simple display. 
         [0060]      FIG. 16  shows an example of a screen display when respective teachings of plural the simple displays are displayed by touching the simple display area  602  in the screen display shown in  FIG. 15 . 
         [0061]      FIG. 17  is a flow chart showing a procedure for the event-selection executed in the step S 1002 . First, the time-position acquisition unit  303  acquires a time and a position (step S 1701 ). The event-control unit  306  sequentially browses the event queue  310  (step S 1702 ) to thereby discriminate an event falling outside the tolerance  903  on the basis of the time and the position, acquired in the step S 1701 . Further, the event-control unit  306  executes the delayed-time processing  503  with reference to the event falling outside the tolerance  903  (step S 1704 ), completing the simple display (step S 1705 ) to thereby free the event-registration from the event queue  310  (step S 1706 ). The event-control unit  306  scans the event queue again to discriminate an event having the highest priority (step S 1707 ), and if plural the events exist (Yes, in step S 1708 ), the event-control unit  306  works out a remaining distance up to the tolerance with reference to each of the events with the calculation formula  1101  described previously, (step S 1709 ) to thereby select an event having the shortest distance up to the tolerance (step S 1710 ). If only one event exists in the step S 1708  (No, in the step S 1708 ), the event-control unit  306  selects a relevant event. 
         [0062]    According to the flow chart described as above, the event-control unit  306  can free the registration of an event that have lost the significance of displaying any longer from the event queue  310  (the step S 1706 ), and even if the plural events high in priority exist, the event-control unit  306  can select one event on the basis of the remaining distance (the step S 1706 ). Thereby, a problem of displaying the event having already lost the significance of displaying, or executing a meaningless display by missing displaying timing can be solved 
         [0063]      FIG. 18  shows an example in which the display of an event B lower in priority is resumed by the control unit according to the present embodiment, following the completion of the display of an event A higher in priority. As shown in this example, if the event B is in a significant range, it is possible to determine on the execution of the event B lower in priority in the normal-display area  601  even after the display of the event A higher in priority was once executed. 
         [0064]      FIG. 19  shows an example in which if two events A, B have the same priority, the display of the event B smaller in tolerance is preferentially executed by the control unit according to the present embodiment. In this example, there is shown the case where if display is executed by starting from the event smaller in tolerance with the normal-display area  601 , this will enable the event-processing of both the events A, B to be executed in respective significant ranges. 
         [0065]      FIG. 20  shows an example in which at timing for executing the display of an event B lower in priority with the control unit according to the present embodiment, the event B has exceeded a significant range, so that event-processing is not executed. As shown in this example, it is possible to inhibit the event-processing at a position that is meaningless to a user. 
         [0066]    Further, in any of the examples shown in  FIGS. 18 through 20 , respectively, the display of an event to be deferred in processing is executed in the simple display area  602 , so that it is possible to solve the problem that the relevant event is not displayed at all. 
         [0067]    As described in the foregoing, according to the present invention, the respective displays of the plural events to be guided are executed in the order in which the event higher in priority is first outputted, and the simple display of a guidance with respect to an event lower in priority as well can be executed. Furthermore, if a guidance on a certain event is completed, an event falling outside the tolerable position of a guidance is not selected as the next selected event, so that a meaningless output to a user can be inhibited.