Abstract:
The present invention is an elevator performance analysis device and process. It comprises a sensor package, a computing device, a computer program, and a communication mechanism between the sensor package and the computing device. The sensor package is physically separate from the computing device comprising a sensor for measuring the acceleration of the elevator car, an integral door position sensor for determining the position of the elevator door, a sensor for measuring the altitude of the elevator car, and an interface to an external communication mechanism for communicating with the computing device. The computing device comprises a processor for running computer programs, memory, electronic storage for programs, data, and analysis results, a display, and a communication mechanism for communicating with the sensor package. The computer program controls the system, analyzes the signals from the sensor package, displays the results of the analysis, and creates reports of the elevator performance.

Description:
BACKGROUND OF THE INVENTION 
       [0001]    The present invention is in the technical field of elevators. More particularly, the present invention is in the technical field of elevator performance analysis. 
         [0002]    Elevators are among the most frequently and widely used modes of public transportation in developed countries. People rely on them as a convenience to quickly travel between floors in multi-story buildings. More importantly, elevators are essential to the existence of high-rise buildings. Elevators are also essential to transport people with certain physical disabilities within multi-story buildings. 
         [0003]    Due to their critical importance, elevators must be safe, comfortable, and reliable. Elevator inspectors, consultants, and mechanics are employed to this end. To help ensure safety, The American Society of Mechanical Engineers (ASME) developed a “Safety Code for Elevators and Escalators”, which is widely known within the elevator industry in the United States as ASME 17.1. This code establishes standard practices for the design, construction, installation, and operation of elevators and escalators. It is the responsibility of each state in the United States to establish laws regarding elevator safety. Most states do this by requiring that some or all of ASME 17.1 be followed within their state. To enforce the code, licensed elevator inspectors inspect every elevator according to a schedule specified by the state. While most of ASME 17.1 deals with other issues, portions of the code do cover the performance parameters of acceleration, speed, jerk, vibration, duty cycle, and door times, and an inspector may need to measure these parameters. 
         [0004]    The National Elevator Industry, Inc. (NEII) publishes a document that specifies the criteria that are used to measure the performance of elevators. This document lists 50 criteria that are used by the industry for new and old elevators alike, some of which can be measured with instruments and others that are currently determined manually. 
         [0005]    Elevators are complicated, specialized, and vary considerably from one to another. As a result, architects, building owners, and building managers often require the services of expert elevator consultants to assist with the design and management of their elevator systems. Elevator consultants frequently need to measure and analyze parameters of elevator performance, for example, to determine if an elevator is installed correctly or is being maintained correctly. 
         [0006]    Elevator mechanics or technicians perform regular maintenance to keep an elevator operating safely and reliably. They also repair defective components, and install new elevator systems and components. During the course of these activities, they have a need to measure and analyze elevator performance parameters. For example, if passengers complain that the elevator “slips” during travel, the mechanic may measure the acceleration to determine when the problem occurs during the trip and its magnitude. As another example, the mechanic needs to measure and adjust the speed to meet specifications when the elevator is installed, and needs to repeat the procedure periodically throughout the life of the elevator. 
         [0007]    Unlike mechanics, consultants and inspectors often do not have specific knowledge of, or access to, the elevator controller and mechanisms. In some cases, building owners themselves want to evaluate the performance of their elevators. 
         [0008]    The parameters of elevator performance are well known but often difficult to measure. Those that are relevant to the current invention are: acceleration/deceleration, speed, jerk, vibration, trips, landings, door times, and duty cycle. 
         [0009]    Acceleration is the rate at which the speed (velocity) of the elevator car changes over time. When the elevator car moves up to a higher landing, there is a positive acceleration as its speed (velocity) increases in the upward direction, followed by a negative acceleration (deceleration) as its speed decreases until the car is stopped. Acceleration exerts a force on the mechanical components of the elevator car and on passengers. If acceleration (or deceleration) is too great, passengers can experience discomfort or injury, and the elevator itself can be damaged. If acceleration is too low, passengers will perceive that the elevator is slow. Acceleration is measured with a device called an accelerometer. Accelerometers are widely available in many form factors and price ranges. 
         [0010]    Speed is the distance traveled per unit of time. Buildings are designed with enough elevators traveling at sufficient speeds to guarantee minimal wait times during the busiest times. If the elevators do not meet their speed requirements, passenger wait times will become unacceptably long. Elevator speeds have traditionally been measured by a mechanic riding on top of the car while holding a tachometer against the guide rail. This is a dangerous procedure. More recently, devices have been developed that compute speed by taking the integral of the acceleration. 
         [0011]    Jerk is the rate of change, or derivative, of acceleration. It is a factor in determining the comfort, or quality, of the ride for the elevator passenger. A “smooth” ride has low jerk. A ride with high jerk is uncomfortable, and may induce fear in passengers. Jerk is computed as the derivative of acceleration. 
         [0012]    Vibration is oscillation about an equilibrium point. Along with jerk, it is a factor in determining the quality of the ride for the elevator passengers. Excessive vibration can cause passengers to complain of “swaying”, “shaking”, or “buzzing”. Vibration is computed as the difference between the maximum and minimum acceleration values of the oscillating acceleration value. Because vibration can occur in three dimensions, a three-axis accelerometer is used, and vibration is computed along the three axes. 
         [0013]    Landings are the vertical stopping positions of the elevator car. Recording the pattern of landings serviced over a period of time, such as “rush hour”, or during an entire day, is necessary when analyzing traffic to determine if the elevators in a building are sufficient to meet the needs of passengers. Knowing the landing in conjunction with other parameters can help in identifying problems. For example, excessive vibration at an upper landing can mean that a hydraulic elevator is low on fluid. Landings are usually recorded manually by the person doing the testing. 
         [0014]    A trip is the movement of the elevator car from one landing to another. Knowing the total number of trips per day is useful when setting maintenance schedules. The number of trips during busy times, and the number of trips to each landing, is useful when planning replacement or modernization of elevators. Trips can be tallied by a person riding in the car. They can be tallied automatically by recognizing computationally the start and end of a trip, such as by a pair of opposite accelerations. 
         [0015]    Timing of the elevator car door is important. The ideal is a door that opens and closes quickly, and remains open no longer than necessary. At the same time, the door should not move so fast that passengers perceive it to be dangerous. To optimize the door motion, several door-related time periods need to be measured and adjusted. These are: 1) car stop until door starts to open; 2) door starts to open until door fully open; 3) door fully open until door starts to close; 4) door starts to close until door completely closed; 5) door completely closed until car begins to move. Door times are usually recorded by a person using a stop watch. Recently, sensors that determine the door positions have been used to automatically record door times. 
         [0016]    The duty cycle is the percent of time the elevator car is moving relative to total time of operation. This is used to determine maintenance frequency. The duty cycle of elevators is typically estimated based upon expected traffic. Duty cycle is also a safety criteria specified in ASME 17.1. 
         [0017]    The current methods that are used for gathering and analyzing these performance parameters all have drawbacks. Any method that requires a person to observe and record is subject to human error. Several existing tools can automatically record and analyze some of these parameters. Many of them are expensive, or are intended for permanent installation on a single elevator. Many are large and heavy systems. Some require electrical connection to the elevator controller or other electrical components which are not easily accessible. Many are very limited in the amount of data they can store. With performance parameters, recording only a few measurements is insufficient, as the values can vary considerably. Many measurements must be recorded and analyzed for accuracy. 
         [0018]    There are many examples of systems that monitor the operation and performance of elevators that are connected to or integrated into the elevator control system. 
         [0019]    The following patents cover systems that are connected to the controller and use test patterns for diagnostic and control purposes: 
         [0020]    U.S. Pat. No. 4,002,973 discloses an elevator testing system. This is a removable system connected to the controller that sends a sequence of simulated signals that test the operation of the elevator. The behavior resulting from these signals is used to evaluate the elevator operation. 
         [0021]    U.S. Pat. No. 4,330,838 discloses an elevator test operation apparatus. The apparatus uses a copy of the controller&#39;s program to provide simulated signals to the elevator. These signals are then used to tune the elevator, including the operation of the doors. 
         [0022]    U.S. Pat. No. 4,458,788 discloses an analyzer apparatus for evaluating the performance of a number of elevators. The apparatus connects to the controller and counts the signals from components, such as call buttons and relays. These counts are compared to those of normal elevator operation 
         [0023]    U.S. Pat. No. 5,042,621 discloses a method and apparatus for the measurement and tuning of an elevator system. The method uses simulated components to provide signals for setting up partially installed elevators. 
         [0024]    U.S. Pat. No. 5,257,176 discloses an apparatus for setting the control operation specifications for an elevator. The system gets the control parameters from the control and displays them to the user. The user can then change the parameters remotely. 
         [0025]    U.S. Pat. No. 7,222,698 discloses an elevator arrangement for testing the brakes on an elevator. On demand, the elevator is started moving upward, the brakes are engaged, and the torque of the motor is measured. The time it takes for the torque to reach zero is indicative of the condition of the brakes. 
         [0026]    U.S. patent application No. 2012/0055741 discloses a system and method for monitoring and controlling multiple elevators based on patterns. This is a supervisory system that interfaces to multiple elevator controllers and copies the same control pattern to each. Elevators are then monitored for deviations from the pattern to indicate possible changes to the control patterns. 
         [0027]    The following patents cover systems connected to the controller that use the control&#39;s internal states for diagnostic and control purposes: 
         [0028]    U.S. Pat. No. 4,418,795 discloses an elevator servicing method and apparatus. Electrical leads are connected to the control system to monitor signals. These signals are compared to the internal states of the control, and any abnormalities are recorded and reported. 
         [0029]    U.S. Pat. No. 4,930,604 and European Pat. No. EP0367388 disclose an elevator diagnostic monitoring apparatus. The apparatus is connected to the outputs of the elevator controller and compares signals and states to known good operation. 
         [0030]    U.S. Pat. No. 5,760,350 discloses a method for monitoring of elevator door performance. A hardware device connected to the door operator control of an elevator determines the state of the door. The device maintains a state machine and compares the actual signals to those of the state machine. The performance of the door is analyzed and reported. 
         [0031]    The following patents cover systems connected to the controller that monitor internal signals for diagnostic and control purposes: 
         [0032]    U.S. Pat. No. 3,781,901 discloses a method for evaluating elevator performance by recording the analog signal from a multi-turn potentiometer on the elevator motor&#39;s shaft. This is interpreted as the position of the elevator. 
         [0033]    U.S. Pat. No. 4,512,442 discloses methods and apparatus for improving the servicing of an elevator system. The apparatus counts faults of the elevator controller, compares these to thresholds, and places service requests based on the results. 
         [0034]    U.S. Pat. No. 4,697,243 discloses a method for servicing an elevator system remotely. Information from the controller is retrieved over communication means. An expert system is used to make inferences about the condition of the elevator for untrained personnel. 
         [0035]    U.S. Pat. No. 5,027,299 discloses an apparatus for testing the operation of system components of an elevator by monitoring signals associated with hall and car calls. The system determines the correct operation of the elevator and incorporates the results in the controller program. 
         [0036]    U.S. Pat. No. 5,431,252 discloses a method for digital recording and graphic presentation of the combined performances of elevator cars. Tachometer digital signals are captured from the elevator&#39;s motor and analyzed to produce a digital display of the elevator&#39;s position. 
         [0037]    U.S. Pat. No. 5,787,020 discloses a procedure and an apparatus for analyzing elevator operation. The apparatus connects to the controllers of multiple elevators and determines the operational functions of each elevator. These are combined to create a normal sequence of signals, and elevators deviating from the norm are identified for potential maintenance. 
         [0038]    U.S. Pat. No. 5,817,994 discloses a remote fail-safe control for an elevator. The remote control arrangement includes a wireless transmitter and a wireless receiver that that is connected to the elevator controller for the purpose of placing calls. It can be detached when not needed. 
         [0039]    U.S. Pat. No. 6,330,935 discloses a maintenance method for elevators that schedules maintenance for components based on their usage. Signals from components and sensors in the elevator can be used to update the schedule for their maintenance automatically. 
         [0040]    U.S. Pat. No. 6,604,611 discloses a condition-based, auto-thresholded elevator maintenance system. Based on statistics, the system generates variable thresholds for acceptable number of faults. Maintenance recommendation can then be issued. 
         [0041]    U.S. Pat. No. 7,699,142 discloses a diagnostic system having a user-defined sequence logic map to monitor an elevator. The apparatus connects to the inputs and outputs of the control system. The user can define logic patterns of the control signals to identify abnormalities. 
         [0042]    U.S. Pat. No. 7,712,587 discloses a system for monitoring elevators by using a virtual elevator group. Information from individual elevators which are distributed geographically is combined into a virtual elevator group to simplify maintenance scheduling. Landing information is tracked. 
         [0043]    U.S. Pat. No. 7,793,762 discloses a destination entry passenger interface with multiple functions. This is a terminal for user entry to determine the best car for the trip. The system gets door times from the controller to help with the dispatch. 
         [0044]    U.S. Pat. No. 8,028,807 discloses a system to remotely record maintenance operations for an elevator or escalator. The system retrieves information about the operation and status of the elevator from the controller to determine if a maintenance technician is working on site. 
         [0045]    U.S. Pat. No. 8,123,003 discloses a method of determining the position of an elevator car using magnetic areas of opposite poles in the hoistway. The system determines the landing number and location using RFID tags. Magnet strips are then used for fine positioning at the landing. 
         [0046]    U.S. Pat. No. 8,307,953 discloses a system and method of determining a position of an elevator car in an elevator shaft. A series of photo detectors along the inside of the hoistway receive a light signal from the elevator car. Resistors between the detectors are used to determine the floor landing location. 
         [0047]    U.S. Pat. No. 8,418,815 discloses a system for remotely observing an elevator system. The system monitors the sounds inside of an elevator car. The sounds can be indicative of the status of the elevator. Sounds can be reproduced from recordings remotely. 
         [0048]    U.S. Pat. No. 8,807,248 discloses an elevator with a monitoring system in which diagnostic information is captured from multiple microprocessors in each car. One microprocessor is used to receive controller commands, while the other monitors RFID tags and sends floor information back to the controller. 
         [0049]    U.S. Pat. No. 8,893,858 discloses a method and system for determining the safety of an elevator. The system uses an accelerometer, a microphone, and an optional smoke detector. Measurements are compared to limits to determine if the elevator is running safely. Alarms are issued as necessary. 
         [0050]    U.S. Pat. No. 9,033,114 discloses a method of determining the position of an elevator car by using an accelerometer. The distance traveled is calculated from the acceleration. To compensate for inaccuracies in the accelerometer, additional sensors in the hoistway are needed to calibrate the accelerometer for the location of landings. 
         [0051]    U.S. patent application No 2015/0014098 discloses a method and control device for monitoring the movement of an elevator car. The system uses multiple speed and acceleration sensors mounted on the rollers of an elevator car to determine if the car speed is exceeding limits. The multiple sensors are used to redundantly check each other to determine the probability of a fault. 
         [0052]    Using accelerometers in portable systems to determine certain elevator performance criteria has been common for many years. These devices address 11 of the 50 criteria specified by the NEII. 
         [0053]    Korean Pat. No. KR20040106077 discloses a portable elevator performance analyzer. This device uses an accelerometer to measure vibration and sound in an elevator car. Performance parameters associated with acceleration are displayed. 
         [0054]    U.S. Pat. No. 5,522,480 discloses a measurement pick-up to detect physical characteristics of a lift. This is a portable device with an acceleration transducer, a timer, and memory. It is used to test the emergency stop mechanism of an elevator, checking for excessive deceleration. 
         [0055]    U.S. Pat. No. 7,004,289 discloses an elevator performance measuring device and method. The elevator performance meter is a portable instrument containing an accelerometer for measuring properties of the vertical movement of an elevator. It specifically measures velocity, acceleration, jerk and run duration as an elevator moves. It must be manually started and stopped by the user. Memory is limited to two trips 
         [0056]    Korean Pat. No. KR100758152 (B1) discloses a fault diagnosis method using analysis of vibration. The system uses statistics concerning ride quality and vibration to determine the probability of a fault in the elevator bearings. 
         [0057]    The EVA-625 Elevator Vibration Analysis system from Physical Measurement Technologies, Inc. combines a three axis accelerometer in a single package with a computer processor, memory, storage, display, and battery. It measures acceleration and computes speed, jerk, and vibration. Its primary drawback is that it can record only 700 seconds of data. It is also a sizable system, in a 10.7″×9.7″×5.0″ case, weighing 9.5 lbs. 
         [0058]    The Liftpc® Mobile Diagnosis system from Henning GMBH, similar to the EVA-265, uses a three axis accelerometer to measure and analyze vibration and ride quality. It is used in conjunction with a laptop computer or portable terminal device to store its data. It must be manually started and stopped by the user. 
         [0059]    Measuring the operation of the doors is important to the evaluation of elevator performance. Door measurements account for 24 of the 50 criteria specified by NEII. This is often difficult to perform without access to the elevator control. 
         [0060]    U.S. Pat. No. 8,678,143 discloses an elevator installation using an accelerometer mounted on an elevator door to measure performance properties of the door. The single accelerometer is also used to measure the same vertical properties as the aforementioned accelerometer-based systems. 
         [0061]    Some of the more difficult measurements to get concern the time to travel between landings in an elevator. These account for 4 of the 50 NEII criteria. This is often performed manually. Determining which landing the elevator is on without access to the elevator control relies on a combination of door, speed, and distance measurements. These measurements in isolation are prone to inaccuracies. 
         [0062]    The QarVision Remote Elevator Diagnostic System by Qameleon Technology, Inc. uses an altimeter to independently determine the position of the elevator in the hoistway. It also uses an accelerometer and independent door sensors to compute the aforementioned performance measures. QarVision is a movable system, but not a portable one. QarVision includes a self-contained computer processor and memory resulting in a high cost. The primary drawback of QarVision is that it must be installed by elevator mechanics, preventing the use by elevator inspectors, consultants, and building owners. 
         [0063]    The need exists for a system to measure elevator performance parameters that is small, lightweight, and inexpensive; can be installed inside the elevator car by inspectors and consultants without special access to the elevator system and without special tools; automatically measures, computes, and records the performance parameters for a very long period of time; and allows the user to recall, display, graph, and prepare reports of the elevator performance. The System for Analyzing Elevator Performance described herein addresses these needs. 
       BRIEF SUMMARY OF THE INVENTION 
       [0064]    The present invention is a system for analyzing elevator performance. It comprises a sensor package, a computing device, a computer program, and a communication mechanism between the sensor package and the computing device. 
         [0065]    To minimize the system cost, the computing device is one of a number of commercially available, off-the-shelf devices that most individuals who work in the technical aspects of elevators would already possess. These devices are computers that are programmable and multi-purpose. Examples of such devices include, but are not limited to, laptop personal computers, desktop personal computers, smart phones, tablet computers, and personal digital assistants (PDAs). The components of these devices that are necessary for the present invention are: one or more computing processors, memory, electronic storage for computer programs and files, an electronic display, and the ability to communicate with other devices. The communication ability may be either built in to the computing device, or it can be added by interfacing a communication device such as an adapter or modem through an existing port on the computing device. 
         [0066]    The communication mechanism between the computing device and the sensor package can be any one of the existing standard communications between computers and peripherals, or between computers and remote devices. These standard communications include but are not limited to serial, USB, Wi-Fi, Bluetooth, Zigbee, and infrared. Whichever is used, both the computing device and the sensor package must include an interface to it. 
         [0067]    The sensor package is a small, lightweight, inexpensive device that comprises one or more three-axis accelerometers, an altimeter, a door sensor, and an interface to the communication mechanism. The door sensor needs to determine if the door is closed, open, or moving. It can do this, for example, by using a proximity sensor and a color sensor placed on the door frame. If the proximity sensor detects that nothing is in front of it, the door must be open. If the color sensor detects a specific color patch placed to indicate that the door is closed, then the door must be closed. If neither is detected, then the door must be moving. Alternatively, the door sensor can use two magnetic sensors positioned on the door frame, one that detects a magnet placed on the door to signal when the door is closed, and another to detect a magnet placed to signal when the door is open. 
         [0068]    To minimize the size of the sensor package, the components are constructed from integrated circuits. All of the components are solid-state devices mounted on a single circuit board enclosed in a small box. The devices on the circuit board communicate digitally with each other using a standard interface protocol, such as I2C. A communication interface device on this circuit board converts the signals to and from the standard external communication mechanism and the internal protocol used in the sensor package. 
         [0069]    The computer program resides in the computing device&#39;s electronic storage, and runs, at the user&#39;s command, in the one or more processors of the computing device. The computer program periodically requests and receives sensor values from the sensor package, uses the sensor values to compute the performance parameters, displays the sensor values and performance parameters to the user on the electronic display, stores the sensor values and performance parameters in a file and a database, and generates reports. 
         [0070]    The sensor values that the computer program requests and receives, and the performance parameters that it computes, are as follows: 1) Acceleration from the accelerometer, used to compute acceleration, speed, jerk, vibration, trips, and duty cycle; 2) Altitude from the altimeter, used to compute landings and distances traveled; 3) Colors from the color sensor, and proximity from the proximity sensor, used to compute door position and door times; or alternatively 3) State of the magnetic sensors, used to compute door position and door times. 
     
    
     
       BRIEF DESCRIPTION OF THE SEVERAL VIEWS OF THE DRAWING 
         [0071]    Preferred embodiments of the invention are shown in the drawings, wherein: 
           [0072]      FIG. 1  is an overview of the system for analyzing elevator performance. 
           [0073]      FIG. 2  shows the layout of the sensor package. 
           [0074]      FIG. 3  shows the placement of the sensor package in the elevator car. 
           [0075]      FIG. 4  shows the steps in the computer program that allow the user to specify settings for the system. 
           [0076]      FIG. 5  shows a pair of accelerations that are used to define a trip. 
           [0077]      FIG. 6  shows the steps in the computer program that loop repeatedly to request and receive sensor values and display them to the user. 
           [0078]      FIG. 7  shows the steps in the computer program that determine the state of each trip 
           [0079]      FIG. 8  shows the steps in the computer program that compute the state of the door. 
           [0080]      FIG. 9  shows the steps in the computer program that learn and determine the landing. 
       
    
    
     DETAILED DESCRIPTION OF THE INVENTION 
       [0081]      FIG. 1  is an overview of the system for analyzing elevator performance. With this system, a user with their computing device (laptop PC)  10 , attaches a communication mechanism (USB cable)  11  between the laptop PC  10  and the sensor package  12 . However, the present invention does not limit the laptop PC and USB cable to be these specific items. 
         [0082]    It is known that a laptop PC  10  includes: a computing processor  13  capable of running a computer program  17 , electronic memory  14  used by the computing processor while running a computer program, electronic storage  16  for indefinitely storing data files  18  and the computer program  17 , and an electronic display  15  capable of displaying graphics to a user. In addition, a laptop PC  10  commonly includes a USB port  19 , providing a communication mechanism via USB cable  11  to another device, in this case a sensor package  12 . Alternatively, a laptop PC  10  commonly includes a Wi-Fi, Bluetooth, Zigbee, or infrared adapter that provides a communication mechanism  11  to the sensor package  12 . 
         [0083]    The sensor package  12  comprises a USB port  20 , two three-axis accelerometers  21  and  22 , a door sensor  23 , and an altimeter  26 . The USB port  20  provides a communication mechanism via USB cable  11  to the laptop PC  10 . The sensor package  12  is not limited to using a USB port  20 , and could instead have a Wi-Fi, Bluetooth, Zigbee, or infrared adapter that connects to the communication mechanism  11 . The two accelerometers  21  and  22  each provide acceleration values in the x, y, and z dimensions. The values from the two accelerometers in each dimension are averaged by the computer program  17 , as will be described later, to provide a single value in each dimension. This is done to reduce noise. The sensor package  12  is not limited to using two three-dimensional accelerometers  21  and  22 . It could instead have one, or more than two, accelerometers. The altimeter  26  measures height above sea level based upon barometric pressure. 
         [0084]    The door sensor  23  comprises a color sensor  24  and a proximity sensor  25 . These sensors are sufficient to determine whether the door is fully open, fully closed, or moving. The door sensor  23  is not limited to using a color sensor  24  and a proximity sensor  25 . It could instead use any alternate set of sensors that would allow it to determine if the door is fully open, full closed, or moving. 
         [0085]      FIG. 2  shows the layout of the sensor package  12 . The positive z-axis of each accelerometer  21  and  22  is aligned with the vertical up direction of the sensor package  12  when the sensor package  12  is installed in the elevator car. The positive x-axis of each accelerometer  21  and  22  is aligned with the horizontal axis of the sensor package  12  that will be perpendicular to the elevator door surface  27  when the sensor package  12  is installed in the elevator car. The positive y-axis of each accelerometer  21  and  22  is aligned with the horizontal axis of the sensor package  12  that will be parallel with the elevator door surface  27  when the sensor package  12  is installed in the elevator car. 
         [0086]    The color sensor  24  contains a near-white LED light source, and four light sensors. Three of the light sensors are filtered to admit light in a narrow band of wavelengths, with the first sensor filtered in the red band, the second sensor filtered in the green band, and the third sensor filtered in the blue band. The fourth light sensor is unfiltered, and is used to determine saturation. The color sensor  24  is mounted at the front edge of the sensor package  12  which will be closest to the elevator door surface  27 . The LED and four light sensors are oriented so they will be perpendicular to the elevator door surface  27 . 
         [0087]    The proximity sensor  25  contains an LED that emits in the infrared range. It also contains a sensor that senses in the infrared range. When the sensor is near a surface, the infrared radiation from the LED is reflected to the sensor, which detects it. When the sensor is far from a surface, the infrared radiation is not reflected to the sensor. The proximity sensor  25  is mounted at the front edge of the sensor package  12  which will be closest to the elevator door surface  27 . The LED and sensor are oriented so they will be perpendicular to the elevator door surface  27 . 
         [0088]    The altimeter  26  is mounted in the sensor package. Its orientation and position are not critical to the measurement of altitude. The housing of the sensor package  12  contains several small holes so that the air pressure will modulate quickly as the elevator car moves. 
         [0089]    The housing of the sensor package  12  is opaque plastic on all sides except one. The side which will be mounted closest to the elevator door surface  27  is a thin clear plastic film  28 , which allows the near-white LED light of the color sensor  24 , and the infrared LED radiation of the proximity sensor  25 , to pass freely out of and into the sensor package  12 . 
         [0090]    The sensor package  12  contains two buttons. The “set closed color” button  29  is pressed by the user to set the color that is used to indicate that the door is closed. The “set open color” button  30  is pressed by the user to set the color that is used to indicate that the door is open. This is described in greater detail later. 
         [0091]      FIG. 3  shows the placement of the sensor package  12  in the elevator car. The sensor package is temporarily attached to the door frame of the elevator with the LED and color and proximity sensors pointed toward the door. A small L-shaped bracket  32  is used to hold the sensor package  12  in position. The sensor package  12  is attached to the bracket  32  using a temporary removable fastener system, such as Velcro®. The bracket  32  is then attached to the door frame using a temporary means, such as tape or magnets. 
         [0092]    Alternatively, the sensor package  12  can be temporarily located on the floor of the elevator instead of the door frame, with the LED and color and proximity sensors pointed toward the door. 
         [0093]    With the door in the closed position, a temporary target  31 , such as a piece of paper or tape of a known color, is attached to the door in front of the color sensors. This is the reference for the door&#39;s closed position. The sensor package  12  is positioned at a distance from the door such that the proximity sensor detects the door&#39;s presence. This is the reference for the door moving. 
         [0094]    The sensor package  12  is connected to the laptop PC  10  using a USB cable  11 . The laptop PC  10  is placed on the floor or hand-held during operation of the system. 
         [0095]    When the user is ready to receive, view, and record elevator performance parameters, he/she starts the computer program  17  on the laptop PC  10 . Several values that are required for the operation of the system can be set by the user. These do not need to be set every time the program is started.  FIG. 4  shows the steps involved. 
         [0096]    The computer program first reads the previous settings from a file  40  stored in the laptop PC&#39;s electronic storage. Then the user can opt to set any of the values. Because the zero point can drift on an accelerometer, it may be necessary to calibrate the accelerometer  41  periodically. To calibrate the accelerometer, the user selects that option, selects which axis is to be calibrated, and ensures that the sensor package remains motionless  42  throughout the calibration procedure. The computer program then requests acceleration values along the specified axis from the two accelerometers  43 . The program receives these two values, averages them, adjusts by subtracting the previous zero point, and displays the difference to the user  44 . When the user tells the program to calibrate the zero  45 , the program again requests values from the two accelerometers, receives and averages them, and saves the result as the new zero point  46 . 
         [0097]    The system needs threshold values for acceleration so that it can detect the start and end of each elevator trip. An elevator trip begins when the car begins to move from a stopped state, and the trip ends when the elevator car stops moving. In this preferred embodiment, the trip is recognized by a pair of z-axis acceleration curves  69  and  70 , in opposite directions, as shown in  FIG. 5 . When the car begins to move upward from a stop  71 , the acceleration increases from zero in the positive direction, peaks  69 , then drops to zero as the car reaches a constant speed  72 . As the car begins to slow, acceleration increases in the negative direction  73 , peaks  70 , and returns to zero when the car stops  74 . The result is a pair of acceleration curves, in opposite directions. When the car moves down, instead of up, the pair of acceleration curves is inverted, with the car first accelerating in the negative direction as it picks up speed, then accelerating in the positive direction as it slows to a stop. 
         [0098]    Elevators often exhibit additional accelerations, which are not associated with the trip. For example, a heavy object being placed in the elevator car may cause a brief acceleration in the negative direction  75 . As another example, the elevator doors opening and closing may cause vibration which results in acceleration in the car  76 . To prevent using these in the detection of the trip, the computer program uses acceleration magnitude thresholds and an acceleration duration threshold. The start threshold  77  is an acceleration magnitude, which the absolute value of the acceleration in the z-axis must exceed. If the acceleration has exceeded the start threshold, the end of the acceleration is determined by its absolute value falling below the stop threshold  78 . The duration of the acceleration  79  is the length of time between the start and end as determined by the start and end thresholds. To be considered an acceleration that is a component of a trip, the absolute value of the acceleration must exceed the start threshold, and the duration of the acceleration must exceed the duration threshold  80 . Note that the brief negative acceleration  75  has a duration that is too short to be associated with a trip. Note also that the low magnitude accelerations  76  never exceed the start threshold, and so are not associated with a trip. 
         [0099]      FIG. 4  shows the steps involved in setting the acceleration thresholds  47 . The user enters the value of the start threshold  48  as an acceleration magnitude. The user next enters the value of the stop threshold  49  as an acceleration magnitude. Finally, the user enters the value of the acceleration duration  50  as a length of time. The program saves the values of the start, stop, and duration thresholds. 
         [0100]    The user can clear all color door sensor settings  51 , which include the three distinct colors to recognize that the door is closed, open, and moving. To clear these settings, the user presses both the “set closed color”  29  and “set open color”  30  buttons on the sensor package  12 , and holds them down for at least a specified amount of time  52 , for example, at least 7 seconds. The program then clears the settings, and saves the fact that each setting is cleared  53 . If the user does this, he/she must then, at a minimum, set a closed door color, and either a proximity threshold or an open door color. 
         [0101]    The user can set the color used to recognize that the door is closed  54 . The user places the color, for example a colored piece of paper, in front of the color sensor  55 , and then presses and releases the “set closed color”  29  button  56 . The program saves the color value that it will use to recognize that the door is closed. Similarly, the user can set a color to be used to recognize that the door is open  57 . This must be a different color than that used for the closed color. The user places the color to be used for open, for example a colored piece of paper, in front of the color door sensor  58 , and then presses and releases the “set open color”  30  button  59 . The program saves the color value that it will use to recognize that the door is open. Finally, the user can set a color to be used to recognize that the door is moving  60 . This must be a different color than those used to recognize that the door is open or closed. The user places the color to be used for moving, for example, the surface of the door itself, in front of the color door sensor  61 , then presses and releases both the “set closed color”  29  and “set open color”  30  buttons simultaneously  62 . The computer program recognizes that both buttons are pressed and stores the color value that it will use to recognize that the door is moving. 
         [0102]    The user can set the proximity threshold  63 , which will be used by the program to determine if a surface (the door) is near the proximity sensor. The proximity values returned by the proximity sensor are high when a surface is near, and low when no surface is near. When the door is open, the proximity sensor value should be less than the threshold. When the door is moving or closed, the proximity sensor value should be greater than the threshold. When the user selects to set the proximity threshold  63 , the program displays the previously set threshold value  64 . The user enters a new threshold value  65 . The computer program saves the new proximity threshold. When the user is done updating settings, the program writes all settings to a file  66 . 
         [0103]      FIG. 6  shows the computer program&#39;s repetitive process of requesting and receiving sensor values from the sensor package, using those sensor values to compute performance parameters, and storing time, sensor values, and performance parameters in a file. At the user&#39;s command  81 , the program begins the process. It first requests and receives the acceleration values from all three axes of the two accelerometers  82 . It averages the values from the two accelerometers in the z axis, the x axis, and the y axis, to reduce noise, and saves the averaged values to the data file along with the time. It uses the averaged acceleration values to compute the state of the trip  83 , speed  84 , jerk  85 , and, if this is the end of the trip  86 , vibration  87 . It saves these values to the data file, along with the time. 
         [0104]    The program uses the current state of the trip, and the acceleration in the z axis, to determine the new state of the trip.  FIG. 7  shows this process. Initially the car is not moving  94 . When the absolute value of the z acceleration (AB_Z) is greater than the start threshold  95 , the trip begins. If the sign of the z acceleration is positive  96 , the car is accelerating up  97 . If the sign is negative, the car is accelerating down  103 . When AB_Z becomes less than the stop threshold  98  and  104 , the car is no longer accelerating. If the duration of the acceleration is greater than the duration threshold  127  and  128 , then the car is moving up  99  or down  105  at constant speed. If the duration of the acceleration is not greater than the duration threshold, the acceleration is not the beginning of a trip, and the elevator car is not moving  94 . If the car is moving up at constant speed  99 , it will begin decelerating  101  when AB_Z exceeds the start threshold, and the sign of the z acceleration is negative  100 . If the car is moving down at constant speed  105 , it will begin decelerating  107  when AB_Z exceeds the start threshold, and the sign of the z acceleration is positive  106 . In both cases, deceleration continues until AB_Z falls below the stop threshold  102  and  108 . If the duration of the deceleration is greater than the duration threshold  129  and  130 , then the trip has ended  109 , and the car is not moving  94 . If the duration of the deceleration is not greater than the duration threshold, the elevator car is continuing to move up at constant speed  99  or down at constant speed  105 . 
         [0105]    Speed is the integral of acceleration over time. In the present invention, speed is calculated  84  by integrating the z axis acceleration over time. Integration of discrete values on computers is a well known technique, and will not be described further here. 
         [0106]    Jerk is the derivative of acceleration over time. In the present invention, jerk is calculated  85  by taking the derivative of the z axis acceleration over time. Taking derivatives of discrete values on computers is a well known technique, and will not be described further here. 
         [0107]    Vibration is computed  87  independently along each of the three acceleration axes at the end of each trip. Along each axis, a fast fourier transform (FFT) of the acceleration over time during a trip is computed. Large values in the resulting FFT correspond to vibration. This is a well known technique, and will not be described further here. 
         [0108]    The computer program next requests and receives the color values and proximity values from the color sensor and proximity sensor  88 , as shown in  FIG. 6 . These values are used to compute the door state  89 , that is, whether the door is closed, moving, or open. The program must have, at a minimum, a defined value for door closed color, and either a defined proximity threshold or a defined door open color, in order to determine the door state. The algorithm for determining door state is shown in  FIG. 8 . First, if the proximity threshold is defined, and the current proximity value is less than the proximity threshold  110 , then the door is open  111 . Otherwise, if the door open color is defined, and the current color matches the door open color  112 , then the door is open  111 . Otherwise, if the current color matches the door closed color  113  (which must be defined), then the door is closed  114 . Otherwise, if the door moving color is not defined  115 , the door is moving  116 . If the door moving color is defined  115 , and the current color matches the door moving color  117 , then the door is moving  116 . If the door moving color is defined  115 , and the current color does not match the door moving color  117 , then the door state does not change  118 . 
         [0109]    As shown in  FIG. 6 , once the door state  89  is known, the program will compute door times and save them to the file  90 . The door times it computes are: 1) car stop until door starts to open; 2) door starts to open until door fully open; 3) door fully open until door starts to close; 4) door starts to close until door completely closed; 5) door completely closed until car begins to move. 
         [0110]    If the door state is open  91 , the program will request and receive the altitude from the altimeter  92 . It then computes the landing number, and the distance traveled from the previous landing, and saves these values to the data file  93 . Initially, the program does not know how many landings exist, nor what their elevations are above the base (first landing). The program learns the number of landings, and their elevation above the base, using the method shown in  FIG. 9 . Initially, there are no known landings  119 . When the door opens, the program requests and receives the altitude from the altimeter. The program stores this altitude as the base altitude for the elevator, and stores this landing as landing 1, with an elevation of 0 above the base  120 . The door closes. At some future time, the door opens again, and the program requests and receives the altitude from the altimeter. The program computes the elevation of the present landing by taking the difference between the new altitude and the base altitude  121 . If the elevation is within some fixed limit, for example 2 meters, of an existing landing&#39;s elevation  122 , then the program saves to the data file the time, the landing number, and the distance traveled from the previous landing  123 . If the elevation is not within the fixed limit of an existing landing, then this is a new landing, and the program checks if the elevation is below the base; in other words, if the elevation is less than zero  124 . If not, the program adds a new landing to the list of landings, with the given elevation. It adjusts all landing numbers so they are in order by increasing elevation. It also saves to the data file the time, landing number and distance traveled from the previous landing  125 . If instead the elevation is less than zero  124 , this altitude is stored as the new base altitude, and this landing is added to the list of landings as the new landing number one with elevation zero. All other landing numbers are incremented by one, and their elevations are incremented by the difference between the previous base altitude and the new base altitude  126 . 
         [0111]    The user can ask the program to store the data in the data file to a data base, where it can more conveniently be analyzed. The program can display the data from the data base graphically or in list form, perform various calculations such as mean, median, min and max, and generate reports containing these computed values. These techniques for storing, manipulating, and displaying data are well known and will not be described further here. 
         [0112]    As will be understood by those skilled in the art, many changes in the apparatus and methods described above may be made by the skilled practitioner without departing from the spirit and scope of the invention, which should be limited only as set forth in the claims which follow.