Abstract:
An elevator dispatching method which estimates the time of arrival (ETA) of each car at the floor of a hall call to be assigned. A building profile of average door cycle times per floor, over predetermined periods of the day, is tabulated and used in the ETA calculations, to provide more accurate ETA values and thus a lower average call waiting time.

Description:
TECHNICAL FIELD 
     The invention relates in general to dispatching strategies for elevator systems of the hydraulic or traction type, and more specifically to a method of more efficiently assigning hall calls to a group of elevator cars using calculated arrival times of the cars at the floor of a hall call to be assigned. 
     BACKGROUND ART 
     Hall calls have been assigned to a group of elevator cars by a large number of different strategies. A common strategy estimates the time of arrival (ETA) of each elevator car for a specific hall call to be assigned. A count is computed for each car which represents the time estimated for the car in question to reach the call floor with the proper service direction to serve the hall call. The hall call assignment is given to the car having the lowest ETA count. 
     DISCLOSURE OF THE INVENTION 
     The present invention recognizes the criticality of door cycle time in the calculation of ETA. Door cycle time is the time to open the doors, plus the time to load and unload passengers, plus the time to close the doors. Although door open time is consistently the same at every floor, the time the doors remain open for loading and unloading is variable, and even the door close time is variable as passengers re-open or stall the doors by actuating the door safety edge. 
     Thus, instead of using a constant value for door cycle time, as in prior art ETA strategies known to us, which is based upon the false assumption that the average door cycle time is the same for every floor of a building, the present invention provides a more precise door cycle time by taking this variability into account. This results in a more accurate ETA calculation enabling more efficient assignments to be made to the cars, and hence a lower average call waiting time, which is the industry standard in measuring elevator efficiency. 
     More specifically, the door cycle time of each car is measured at each floor of the building. A profile of the building is developed depicting the average door cycle time at each floor over a suitable period of time. For example, from 8:30 AM to 8:45 AM the average door cycle might be 6 seconds at floor #2, while from 8:45 AM to 9:00 AM the average might rise to 9 seconds. These averages are stored, periodically updated, and available to the dispatching function which makes the ETA calculations. 
    
    
     BRIEF DESCRIPTION OF THE DRAWINGS 
     The invention will become more apparent by reading the following detailed description in conjunction with the drawings, which are shown by way of example only, wherein: 
     FIG. 1 is a diagrammatic representation of an elevator system which may utilize the dispatching methods of the invention; 
     FIG. 2 is a RAM map listing per-car status information; 
     FIG. 3 is a RAM map listing per-car floor enable information; 
     FIG. 4 is a RAM map of a hall call table; 
     FIG. 5 is a RAM map of a car table; 
     FIG. 6 is a RAM map of an assignment register; 
     FIG. 7 is a RAM map of a trip list; 
     FIG. 8 is a ROM map listing various time periods to be used b a hall call assignment program; 
     FIG. 9 is a flowchart of a program which assigns hall calls to a plurality of elevator cars; 
     FIG. 10 is a subroutine ASSIGN called by the program shown in FIG. 9 to make specific assignments of hall calls to the elevator cars; 
     FIG. 11 is a flow chart of a subroutine ETA-A which establishes a first travel path for an elevator car to service a hall call to be assigned; 
     FIG. 12 is a flow chart of a subroutine ETA-B which establishes a second travel path for an elevator car to service a hall call to be assigned; 
     FIG. 13 is a flow chart of a subroutine ETA-C which establishes a third travel path for an elevator car to service a hall call to be assigned; 
     FIG. 14 is a flow chart of a subroutine COMPUTE which may be used by subroutines ETA-A, ETA-B and ETA-C in computing the ETA travel time for a car to service a trip list prepared for the selected travel path; 
     FIG. 15 is a chart which illustrates the operation of the programs in selecting travel paths for a car in which its farthest committed stop is for a car call; 
     FIG. 16 is a chart which illustrates the operation of the programs in selecting travel paths for a car in which its farthest committed stop is for a hall call; and 
     FIG. 17 is a RAM map of a door cycle time (DCYT) building profile maintained for use in the ETA calculation program shown in FIG. 14. 
    
    
     DESCRIPTION OF PREFERRED EMBODIMENTS 
     The invention will be described relative to a specific, exemplary ETA dispatching system. It is to be understood, however, that the invention may be used to enhance any ETA type dispatching system. 
     Referring now to the drawings, and to FIG. 1 in particular there is shown an elevator system 20 which may benefit from the teachings of the invention. Elevator system 20 includes a plurality of elevator cars #0 through #N mounted for guided movement in hatchways 22 of a building 24 to serve the floors therein numbered 1 through N. Elevator cars #0 through #N, which cars may be of the hydraulic type, or of the traction type, as desired, each have a car controller, such as car controller 26 associated with car #0. The plurality of elevator cars #0 through #N are placed under group control by a system processor 28. A car controller which may be used for car controller 26 is shown in U.S. Pat. No. 3,750,850, with modifications thereof for group control by a system processor, including data links, being shown in U.S. Pat. No. 3,804,209. U.S. Pat. Nos. 3,750,850 and 3,804,209, which are assigned to the same assignee as the present application, are hereby incorporated into the specification of the present application by reference. 
     Car calls are registered in the elevator cars #0 through #N via suitable pushbutton arrays, such as pushbutton array 30 in car #0. 
     Hall calls are registered from suitable pushbuttons located at the various floors of building 24, such as an up hall call pushbutton 32 located at the lowest floor (floor #1), a down hall call pushbutton 34 located at the highest floor (floor #N), and up and down hall call buttons 36 located at each of the intermediate floors. The up and down hall calls may be serialized and transmitted to an input interface 38 of system processor 28 as signals 1Z and 2Z. The car calls registered in each of the cars may be serialized and transmitted to input interface 38 along with other per-car related information as signal 3Z. The per-car information includes car status signals, such as a signal INSV which is true when the associated car is in service; a signal UPTR which is a logic one when the associated car is set for up travel and a logic zero when it is set for down travel; a signal AVAS when an in-service elevator car is stationary, not busy and available for assignment, i.e., the car has no car calls and no assigned hall calls; a signal AVP which gives the advanced position of the associated elevator car in binary; a signal ACC which indicates the car is to accelerate away from a floor; a signal DEC which indicates the car should start decelerating to land at a target floor; a signal DCL which indicates that the car doors are closed; and a signal ACCX which is a start command. The per-car information also includes floor enable signals FEN which indicate which floors of the building 24 the associated car is enabled to serve. The floor enable signals may be set in memory tracks in the car controllers, or at a traffic director&#39;s station (not shown), as desired. 
     System processor 28, in addition to input interface 38, includes a central processing unit (CPU) 40, a read-only memory 42 (ROM), a random-access memory 44 (RAM), and an output port 46. 
     As shown in the RAM maps of FIGS. 2 and 3, system processor 28 stores the per-car information in suitable tables in RAM 44, including a car status table 48 (FIG. 2) and a floor-enable table 50 (FIG. 3). 
     System processor 28 additionally prepares a hall call table 52 shown in FIG. 4, a car table 54 shown in FIG. 5, an assignment register 56 shown in FIG. 6, and a trip list table 58 shown in FIG. 7. The hall call table 52 may be integrated into the assignment register 56 if desired, by adding a &#34;call&#34; bit next to the assignment bit in both the up and down call portions of the register. 
     FIG. 8 is a ROM map 60 which includes a list of constants stored in ROM which pertain to the specific elevator system 20. The constants include the time T in seconds by which the lowest ETA for a hall call must be lower than the ETA of a different car which was previously assigned to serve the hall call being considered, before the assignment will be switched to the different car. The constants also include a listing of times in seconds for the specific elevator cars in system 20 to perform the various functions required to serve the floors, including the time ACCT to accelerate from a floor to full speed; the time DECT to decelerate from full speed and land at a target floor; the time HS to travel from one floor level to another at full speed; the time OFTT for a car to make a one-floor run; the time ADT to land at a target floor when the car being considered is already in the process of decelerating; the time DOT for the elevator car door and associated hatchway door to fully open; and the door cycle time DYCT. 
     Door cycle time DYCT is a default value used before a building profile of floor and time related average door cycle times are developed according to the teachings of the invention, as set forth in a RAM map 260 shown in FIG. 17. Hardware or software timers are used to time the door cycle of each car at each floor of the building. The door cycle times are stored for each car and averaged over predetermined portions of each day the building has normal use. For example, as shown in FIG. 17, which is a RAM map 260 of average door cycle times for one of the elevator cars, the time periods may be one hour long over the business day; or, they may be shorter during busy periods of the day and longer during off-peak hours, as desired. 
     A simple program for calculating the average DCYT is entered periodically, such as by timer interrupt, with each updating replacing the prior average. When the elevator system is initialized, the default value for DCYT is used, and the default value may be used off-hours, when only one or two cars of a bank of cars is operational. 
     FIG. 9 is a detailed flowchart of a hall call assignment program 62 stored in ROM 42. Program 62 is entered at 64 and step 66 initializes the system, such as by setting table pointers to initial positions. For example, step 66 places pointer 68 at the lowest up scan slot position so the program starts by looking for an up hall call at the lowest floor. When this pointer is incremented, it will go upwardly through the up hall call table. When it is incremented from the up scan slot for floor N-1 it will jump to the highest scan slot in the down hall call portion of the table. When the pointer is incremented downwardly through the down hall call table, it will jump back to the lowest scan slot in the up hall call portion of the table when it is advanced from the scan slot associated with the next to the lowest floor. Thus, the up scan slots are numbered 0 through N-1, and the down scan slots are numbered from N through 1. In like manner, pointer 70 is initialized at up scan slot 0 in the assignment register 56 shown in FIG. 6. Additional pointers to be initialized by step 66 include pointer 72 to the floor enable table 50 shown in FIG. 3, and pointer 74 to the car table 54 shown in FIG. 5. 
     After the initialization step 66, step 76 checks pointer 68 of the hall call table 52 for a registered up hall call. If no hall call is found, step 78 increments pointers 68, 70 and 72 of tables 52, 56 and 50, respectively, and the program returns to step 76. The program 62 thus loops through the up and down hall call tables continuously until step 76 finds a registered up or down hall call. 
     When step 76 finds a registered hall call, step 80 checks pointer 74 of the car table to determine which car is presently being considered for the hall call, it obtains the car status information associated with this car from the RAM map 48 shown FIG. 2, and it obtains the floor enable data FEN for this car from the floor enable table 50 shown in FIG. 3. 
     Step 82 checks the logic level of signal INSV to determine if the car being considered is in service. It this car is not in service, step 84 sets the ETA time for this car to the maximum value OFFH, and the program will not consider a car having the maximum ETA for assignment. Step 86 increments the car pointer 74 in the car table 54 of FIG. 5, and step 88 determines if the whole car table has been considered relative to the call in question. If one or more cars remain to be considered, step 88 returns to step 80 to obtain information relative to the newly selected car. If step 88 finds that all of the cars have been considered relative to the hall call in question, the program calls subroutine ASSIGN in step 90. Subroutine ASSIGN is shown in FIG. 10 which is a flowchart of an assignment program 92 which will be hereinafter be described in detail. 
     Returning to step 82, if step 82 finds that the car being considered is in service, step 94 checks the floor enable bit FEN to see if this car is enabled for the floor of the hall call. If this car is inhibited from serving hall calls at this floor, step 94 returns to step 84 and proceeds through steps 86, 88 and 90, which were previously described. 
     If step 94 finds that the car being considered is enabled for the floor of the hall call being considered, step 96 checks signal AVAS to determine if the car is busy serving a call, or if it is idle and available for assignment. If the car is idle, step 96 proceeds to step 98 which calls a subroutine ETA-A for computing the ETA time for the car to serve the hall call. FIG. 11 is a flowchart of a program 100 which implements the ETA-A subroutine, and it will be hereinafter described in detail. 
     Step 98 returns to program step 86 after running subroutine ETA-A, to determine if all of the cars have been considered relative to the call to be assigned or reassigned. 
     If step 96 finds that the car being considered is not an idle car available for assignment, step 102 checks to see if the car has a car call 3Z or an assigned up or down hall call 1Z or 2Z, respectively. If the car has no car call and no hall call assignment, it may be considered to be the same as an available car and the program calls subroutine ETA-A in step 98. 
     If step l02 finds that the car is busy, i.e., it has at least one car call or at least one assigned hall call, step 104 determines the floor of the farthest committed stop (FC floor) in the travel path of the car in serving its present workload. For example, if the car is traveling upwardly and its highest car call is for floor N-2, and it has no assigned hall calls which require further travel of the car, the FC floor would be N-2. If in addition to the car call at N-2, the car has been assigned a down hall call at floor N-4, then the FC floor would be N-4. 
     After the FC floor is determined, step 106 checks to see if the FC floor is related to a car call or an assigned hall call. If the FC floor is related to a car call, step 108 determines if the car travel direction is the same as the scanning direction through the hall call table 52 shown in FIG. 4. If the car is set for up travel and the scanning direction is upwardly through the up hall call table, or if the car is set for down travel and the scanning direction is downwardly through the down hall call table, step 108 proceeds to step 110. Step 110 determines if the scan slot floor (the floor of the hall call being considered) is closer to the AVP floor of the car than the previously determined FC floor. If the car will arrive at the scan slot floor before the FC floor, step 110 proceeds to step 98 to call subroutine ETA-A. If the car will arrive at the FC floor before reaching the scan slot floor, then step 110 proceeds to step 112. Step 112 calls a subroutine ETA-8 to compute the ETA time for the car to arrive at the hall call floor. FIG. 12 is a flowchart of a program 114 which implements the ETA-B subroutine, and it will be hereinafter described in detail. Step 112 returns to step 86 to check for another car after subroutine ETA-B runs. 
     If step 108 found that the car travel direction was opposite to the scanning direction through the hall call table 52, then step 108 proceeds to step 112 to call subroutine ETA-B. 
     If step 106 found that the FC floor was not associated with a car call, then the FC floor is associated with a hall call assignment and the program branches to step 116. Step 116 is similar to step 108, determining if the car travel direction is the same or opposite to the scanning direction through hall call table 52. If the travel direction is the same as the scan direction step 118 checks to see if the car travel direction UPTR is the same as the service direction of the hall call at the FC floor. If the car travel direction is the same as the service direction of the hall call it had been previously assigned to serve, which call is located at the FC floor, step 118 returns to step 110 previously described. If the car travel direction is opposite to the direction of the hall call at the FC floor, then step l18 proceeds to step 98 to call subroutine ETA-A. 
     If step 116 finds the car travel direction UPTR is opposite to the scanning direction through the hall call table 52, step 116 proceeds to step 120. Step 120 determines if the car travel direction UPTR is the same as the direction of the hall call at the FC floor. If the directions are the same, step 120 proceeds to step 122 to call a subroutine ETA-C for computing the ETA time for the car to arrive at the scan floor. FIG. 13 is a flowchart of a program 124 which implements the ETA-C subroutine, and it will be hereinafter described in detail. Step 122 returns to step 86 after running subroutine ETA-C. 
     If step 120 finds that the car travel direction UPTR is opposite to the direction of the hall call at the FC floor, step 120 proceeds to step 126 to determine if the scan floor of the hall call being considered is farther from the AVP floor of the car than the previously determined FC floor. If the scan slot floor is farther from the AVP floor than the FC floor, step 126 proceeds to step 98 to call subroutine ETA-A. If the scan slot floor is not farther from the AVP floor than the FC floor, step 126 proceeds to step 112 to call subroutine ETA-B. 
     Subroutines ETA-A, ETA-B and ETA-C establish three different potential travel travel paths for determining ETA time. Subroutine ETA-A is entered at 128 and step 130 prepares a trip list for the car being considered from the advanced floor position AVP of the car to the scan slot floor. FIG. 7 illustrates the trip list 58, and it would be made out for the car in question, listing all stops between the AVP floor and the scan slot floor. If the car&#39;s AVP is the second floor and the scan slot floor is N-1, for example, all of the stops which the car is presently committed to make between these two floors would be listed. Step 132 computes the time for the car to complete its trip list and arrive at the scan slot floor. Step 132 calls a subroutine COMPUTE shown in FIG. 14, with FIG. 14 being a flowchart of a program 134 for computing ETA which will be hereinafter described. Subroutine ETA-A returns to the main program at 136 after computing and storing the ETA for the car in question for comparison with the ETA&#39;s of the remaining cars. 
     Subroutine ETA-B is entered at 138 and step 140 prepares a trip list for the car being considered from the AVP floor of the car to the FC floor, and from the FC floor to the scan floor. Thus, unlike ETA-A, which prepared a trip list from the car directly to the scan floor, ETA-B prepares a trip list from the car to the floor of the farthest committed call, i.e., the FC floor, and then from the FC floor to the floor of the hall call being considered for assignment, i.e., the scan floor. Step 142 calls the subroutine COMPUTE shown in FIG. 14 to compute the time for the car to complete its trip list, and the subroutine returns to the main program at 144. 
     Subroutine ETA-C is a subroutine used only when the FC floor is related to a hall call. Subroutine ETA-C is entered at 146 and step 148 prepares a trip list for the car being considered from the AVP floor of the car to the FC floor, from the FC floor to the terminal floor which is in the direction of the service direction of the hall call at the FC floor, and from this terminal floor to the hall call scan floor. Thus, unlike ETA-A, which prepares a trip list from the car directly to the scan floor, and unlike ETA-B which prepares a trip list from the car to the floor of the farthest committed call, i.e., the FC floor, and then from the FC floor to the floor of the hall call being considered for assignment, i.e., the scan floor, ETA-C prepares a trip list from the car to the FC floor, from the FC floor to a terminal floor, and then from the terminal floor to the scan floor. Step l50 calls the subroutine COMPUTE shown in FIG. 14 to compute the time for the car to complete its trip list, and the subroutine returns to the main program at 152. 
     The program 134 for the subroutine COMPUTE shown in FIG. l4 is entered at 154 and the purpose of the subroutine is to compute the ETA for the specific trip list prepared for the car. Step 156 checks to see if the car is moving. If either signal ACC or signal DEC is true, the car is moving. If the car is not moving, step 158 checks signal DCL to see if the car doors are closed. If the car doors are closed, step 160 checks start command signal ACCX to determine if the car has just arrived or is preparing to leave the floor. If the car is not leaving it has just arrived, or is parked at the floor with its doors closed. Step 162 determines if the floor at which the car is located is the scan floor, i.e., the floor of the hall call to be assigned. In this instance it is not the scan floor, as the hall call would have been cancelled when the car started decelerating to stop at the floor, and step 162 proceeds to step 164 to see if the car is a busy car or an available car by checking signal AVAS. If the car is not available, then it just stopped at the floor and step 166 adds the door cycle time DCYT to any previous ETA time computed for this car. 
     According to the teachings of the invention, the door cycle time DCYT is obtained from RAM 44, as set forth in RAM map 260 shown in FIG. 17 for the specific car being considered for assignment. If the system was just initialized, the default value for DCYT (ROM map 60 - FIG. 8) would be used until a building profile of door cycle times is developed. While the building profiles of door cycle times are developed on a per car basis, it is to be understood that it would also be suitable to average the per car door times for each floor and use the bank average instead of the per car average for DCYT. 
     If the car is available, then no door time is required as the car can start on its trip list without opening its doors. Step 166 and the &#34;yes&#34; branch from step 164 proceed to step 168 which checks to see if the next stop on the trip list is one floor from the present car position, i.e., a one-floor run. If the next stop is a one-floor run, step 170 adds the one-floor run time OFTT to any prior computed value of ETA, and stores the new ETA at a temporary location in RAM. Step 162 checks to see if this next stop, i.e., the one floor run, will bring the car to the scan floor. If not, step 166 adds the door cycle time DCYT to the car&#39;s ETA and returns to step 168. If the next stop on the trip list is not a one-floor run, step 172 adds the acceleration time ACCT to the car&#39;s ETA and proceeds to step 174. Step 174 determines how many floors will be passed at rated speed before reaching the next stop on the trip list, and multiplies this number by the time HST required for the car to travel between two floors at rated speed. This time, plus the deceleration time DECT to stop at the next stop are added to the car&#39;s ETA. Step 174 proceeds to step 162 to determine if the car has completed its trip list. When step 162 finds that the stop being considered is the scan slot floor, step 176 adds the time DOT to open the door at the scan slot floor to the car&#39;s ETA. 
     If step 158 finds the doors open, step 159, according to the invention, subtracts the door open time DOT (ROM map 60 - FIG. 8) from the door cycle time DCYT (RAM map 260, FIG. 17), and adds the difference to the car&#39;s ETA value. Step 158 proceeds to step 168. 
     If step 156 finds that the car is moving at the time its trip list is initiated, the car is accelerating, or it is at full speed, or it is already decelerating. Step 186 determines if the car is accelerating, and if it is, step 172 adds the accelerating time ACCT to the car&#39;s ETA, and advances to step 174, which was previously described. If the car is not accelerating, step 188 determines if the car is traveling at full speed. If it is traveling at full speed, step 188 advances to step 174. If the car is not accelerating and is not traveling at full speed, it is already decelerating and step 188 advances to step 190 which adds the &#34;already decelerating&#34; time ADT to the car&#39;s ETA. Step 190 advances to step 162. Thus, when all of the floor stops on the trip list have been considered, the car&#39;s ETA has been completed, and the subroutine returns to the main program 62 shown in FIG. 62. 
     When program 62 finds that the ETA times for all of the cars have been computed for the hall call in question, step 88 branches to step 90 which calls subroutine ASSIGN. Subroutine ASSIGN is a program 92 shown in FIG. 10 which is entered at 192. Step 194 compares the ETA values for all of the cars and determines which car #has the lowest ETA value. Step 196 determines if this hall call is a new call, or one which had been previously assigned to a car, by checking the assignment bit in assignment register 56 shown in FIG. 6. If the call is a new hall call, step 188 assigns the call to the car having the lowest ETA and the subroutine exits at 200 to return to the main program to consider the next hall call in the hall call table 52. 
     If the call had been previously assigned, step 196 advances to step 202 which determines the car #to which the call was assigned. Step 204 checks to see if the car # with the lowest ETA is the same car # to which the call had been previously assigned. If it is the same car, step 188 returns to the main program at 200. 
     If step 204 finds that the car having the lowest ETA is not the same as the car with the prior assignment, step 208 determines the difference between the ETA&#39;s of the two cars and step 208 determines if the new car&#39;s ETA time is lower than the ETA time of the prior assigned car by a predetermined number T. If the new car&#39;s ETA is not lower by T seconds, the assignment to the prior car is retained and step 208 returns to the main program. If the new car&#39;s ETA is lower than the prior car&#39;s ETA by more than T seconds, step 210 assigns the call to the new car and removes the assignment from the assignment register of the prior car. Step 210 returns to the main program 200. 
     The chart of FIG. 15 lists examples of the travel paths for different relative positions of the AVP floor, the scan slot floor and the FC floor when the FC floor is related to a car call. The car call floor has no service direction, which simplifies the travel paths to those of subroutines ETA-A and ETA-B. 
     If the scan slot floor is between the AVP floor and the FC floor, the travel path and thus the trip list will be between the AVP floor and the scan slot floor, as indicated by dotted line 212. This is implemented by subroutine ETA-A. In the remaining examples, the travel path and trip list extends from the AVP floor to the FC floor, and from the FC floor to the scan floor, which is implemented by subroutine ETA-B. 
     More specifically, when the FC floor is between the AVP floor and the scan slot floor, the travel path if from the car to the FC floor and from the FC floor to the scan floor regardless of the car travel direction or scan direction. This is indicated by travel paths 214 and 216 for like travel and scan directions, and by travel paths 218 and 220 for unlike travel and scan directions. 
     When the scan floor is between the AVP floor and the FC floor, and the scanning direction is opposite to the car travel direction, the travel path extends from the AVP floor to the FC floor, indicated by travel path 222, which by-passes the scan floor, and then the travel path reverses, indicated by travel path 224, to extend from the FC floor to the scan floor. 
     When the FC floor is on one side of the AVP floor and the scan floor on the other side, with unlike travel and scan directions, travel path 226 is followed from the AVP floor to the FC floor, and the travel path then reverses, following path 228 from the FC floor to the scan floor. 
     The chart of FIG. 16 lists examples of the travel paths for different relative positions of the AVP floor, the scan slot floor and the FC floor when the FC floor is related to a hall call. The hall call floor has a service direction, which requires the travel path provided by subroutine ETA-C in addition to the travel paths provided by subroutines ETA-A and ETA-B. 
     More specifically, if the FC floor is between the AVP floor and the scan floor, and the hall call at the FC floor has the same service direction as the car travel direction, subroutine ETA-B is selected which provides a travel path 230 from the AVP floor to the FC floor, and a travel path 232 from the FC floor to the scan floor. 
     When the FC floor is between the AVP floor and the scan floor, and the hall call at the FC floor has a service direction which is opposite to the car travel direction, subroutine ETA-A is selected, establishing a travel path 234 from the AVP floor to the scan floor. The assigned hall call at the FC floor is ignored during this determination, and if it should result that the car is assigned the hall call at the scan floor, the down hall call previously assigned to this car will probably be reassigned to another car. 
     In like manner, if the scan floor is closer to the AVP floor than the FC floor, the car travel direction is the same as the scan direction and opposite to the service direction of the hall call at the FC floor, travel path 236 will be followed from the AVP floor to the scan floor, with the assigned down hall call at the FC floor being ignored. This result will be provided by calling subroutine ETA-A. 
     When the FC floor is closer to the AVP floor than the scan floor, the car travel direction is the same as the service direction of the assigned hall call at the FC floor, and the scan direction is opposite to the car travel direction, the travel path includes a leg 238 from the AVP floor to the FC floor to service the up hall call. Since is is not known at this point how far the up hall call passenger will wish to travel in the up direction, it is assumed that the prospective passenger will place a car call for the longest trip, i.e., to the upper terminal floor N, providing a travel path 240 from the FC floor to the terminal floor N, and a travel path 242 from the terminal floor N to the scan floor. This result is provided by calling subroutine ETA-C. 
     When the scan floor is closer to the car than the FC floor and the car travel direction is opposite to both the scan direction and the service direction of the hall call at the FC floor, a travel path having a leg 244 extends from the AVP floor to the FC floor, and leg 246 extends from the FC floor to the scan floor. This requires subroutine ETA-B. 
     When the scan floor is closer to the AVP floor than the FC floor, and the car travel direction is opposite to both the scan direction and the service direction of the hall call at the FC floor, subroutine ETA-A is called which establishes travel path 248 from the AVP floor to the scan floor. 
     When the car&#39;s AVP floor is between the scan floor and the FC floor, and the car travel direction is opposite to both the scan direction and the service direction of the hall call at the FC floor, the travel path includes a leg 250 from the AVP floor to the FC floor, and a leg 252 from the FC floor to the scan floor.