Abstract:
A movable barrier operator ( 11 ) receives movement sensing signals from a sensor ( 13 ) and calculates corresponding speed of movement of a movable barrier. Such speed measurements lead to development of a median speed value over a monitoring window. The median speed value is used in a subsequent monitoring window to facilitate determining when speed of movement for the movable barrier has slowed in a way that likely corresponds to the movable barrier having encountered an obstacle.

Description:
[0001]    This application claims the benefit of Provisional Application No. 60/286,473 filed Apr. 25, 2001. 
     
    
     
       TECHNICAL FIELD  
         [0002]    This invention relates generally to movable barrier operators and more particularly to obstacle detection.  
         BACKGROUND  
         [0003]    Movable barrier operators are known in the art. Such operators, including garage door operators, are often provided with a mechanism to detect when an obstacle lies in the path of the movable barrier. Upon sensing such an obstacle, movement of the movable barrier can be altered to avoid damage or injury to the obstacle and/or the movable barrier.  
           [0004]    In some systems, a force limit (or force sensitivity) can be manually set. When this value is exceeded during movement of the movable barrier, as will typically occur when the movable barrier contacts an obstacle, an appropriate response can be effected. For example, the direction of travel of the movable barrier can be reversed to move the movable barrier away from the obstacle. In other systems, the speed of door travel is monitored. If the speed slows or stops, the operator determines that the movable barrier has contacted an obstacle and again the movable barrier can be stopped or its movement reversed.  
           [0005]    One problem with such systems derives from the fact that the amount of force required to move a movable barrier over its entire travel limit may vary from place to place. Variations can also exist in a given place between closing and opening the movable barrier. In addition, mechanical noise due to sticking of the movable barrier can also contribute detectable artifacts that can simulate rapid force changes that can in turn cause an unwanted operator response.  
           [0006]    Some prior art systems seek to remedy such problems by adjusting force sensitivity to make the operator less sensitive to such conditions. Unfortunately, reducing sensitivity in this way will also often make the operator less sensitive to detecting a genuine obstacle impact.  
           [0007]    Other systems use so-called force profiling. Historical force information is stored in a force table and possibly updated from time to time to account for changes over time. Unfortunately, these systems, too, are sometimes subject to false triggering due at least in part to measurement anomalies during the operation of the movable barrier.  
       
    
    
     BRIEF DESCRIPTION OF THE DRAWINGS  
       [0008]    The above needs are at least partially met through provision of the method and apparatus for facilitating control of a movable barrier operator described in the following detailed description, particularly when studied in conjunction with the drawings, wherein:  
         [0009]    [0009]FIG. 1 comprises a block diagram as configured in accordance with an embodiment of the invention;  
         [0010]    [0010]FIG. 2 comprises a flow diagram as configured in accordance with an embodiment of the invention;  
         [0011]    [0011]FIG. 3 comprises a flow diagram as configured in accordance with an embodiment of the invention;  
         [0012]    [0012]FIG. 4 comprises a flow diagram as configured in accordance with an embodiment of the invention; and  
         [0013]    [0013]FIG. 5 comprises a flow diagram as configured in accordance with another embodiment of the invention. 
     
    
       [0014]    Skilled artisans will appreciate that elements in the figures are illustrated for simplicity and clarity and have not necessarily been drawn to scale. For example, the dimensions of some of the elements in the figures may be exaggerated relative to other elements to help to improve understanding of various embodiments of the present invention. Also, common but well-understood elements that are useful or necessary in a commercially feasible embodiment are typically not depicted in order to facilitate a less obstructed view of these various embodiments of the present invention.  
       DETAILED DESCRIPTION  
       [0015]    Generally speaking, during movement of a movable barrier from a first position to a second position by a movable barrier operator, the operator repeatedly senses a parameter representing the forces applied to the movable barrier during a first interval of time and determines at least one value that represents the sensed forces on the movable barrier over the interval of time. During a subsequent interval of time, which subsequent interval is later than the first interval of time but still during the same movement of the movable barrier from the first position to the second position, this sensed value is used to determine a threshold value. In one embodiment, the representative value is divided by a predetermined scaling value and is then multiplied by an adjustment value to derive the threshold value. In one embodiment, the adjustment value comprises at least one of a force adjustment setting and a noise level adjustment value. If desired, the force adjustment value can be multiplied by the noise level adjustment value to provide the adjustment value. The forces applied to the barrier may be sensed somewhat directly by use of a force sensing device such as a piezoelectric strain measuring unit or such forces can be represented by the current applied to the motor or the speed at which the motor or the barrier are moved. Other such devices for representing applied forces are known in the art. In the subsequently described embodiments the barrier speed as represented by motor speed is used to represent forces applied to the barrier.  
         [0016]    Pursuant to these various embodiments, during movement of a movable barrier from a first position to a second position by a movable barrier operator, the operator repeatedly senses present speed of the movable barrier during a first interval of time and determines at least one representative value as corresponds to the speed of the movable barrier over that interval of time. (In a preferred embodiment, this interval of time is without fixed duration. Instead, the interval is bounded by the amount of time required to accommodate a fixed number of sequential position measurements.) In one embodiment, the at least one representative value comprises a median value of speed over this interval of time. During a subsequent interval of time, which subsequent interval is later than the first interval of time but still during the same movement of the movable barrier from the first position to the second position, this representative value is used to determine a threshold value. In one embodiment, the representative value is divided by a predetermined scaling value and is then multiplied by an adjustment value to derive the threshold value. In one embodiment, the adjustment value comprises at least one of a force adjustment setting and a noise level adjustment value. If desired, the force adjustment value can be multiplied by the noise level adjustment value to provide the adjustment value.  
         [0017]    During that subsequent interval of time, a first value that corresponds to the present speed of the movable barrier is compared with the threshold value. In one embodiment, the first value comprises the absolute value of the present speed less the representative value determined above. This first value is then compared against the threshold value. When the first value is within a predetermined range of values with respect to the threshold value, the operator then takes at least one predetermined action with respect to subsequent movement of the movable barrier (for example, movement of the movable barrier can be stopped or reversed). In one embodiment, the predetermined range of values includes values that are larger than the threshold value, such that the predetermined action will be taken when the first value exceeds the threshold value.  
         [0018]    In one embodiment, to aid in preventing false triggering of the predetermined response, a plurality of such comparative results can be required before initiating the predetermined action.  
         [0019]    Referring now to FIG. 1, a movable barrier system  10  includes, in this embodiment, a movable barrier operator  11  that comprises a programmable platform. The movable barrier operator  11  couples to a motor  12  which in turn is coupled to a movable barrier (not shown) via an appropriate drive mechanism (not shown) as well understood in the art. A sensor  13  provides speed information regarding the motor  12  to the movable barrier operator  11 . Such a sensor  13  may be, for example, an optical interrupter that provides a signal to the movable barrier operator  11  each time an output shaft of the motor  12  rotates a predetermined amount. If desired, one or more force setting controls  14  and  15  can also be provided (for example, to allow manual adjustment of a force setting when closing, opening, or both). All of the above components, both individually and as combined, are well understood in the art. Therefore, for the sake of brevity and the preservation of focus, additional description will not be provided here.  
         [0020]    So configured, the movable barrier operator  11  can cause selective movement of a movable barrier by control of the motor  12 . This includes moving the movable barrier from an open position to a closed position and the reverse thereof. Also, as already indicated, the movable barrier operator  11  can monitor the speed of the motor  12  and hence the corresponding speed of the movable barrier. Also as already indicated, force settings can be manually modified by a user (in this embodiment, such controls, when present, are presumed to offer a range of adjustment from one to sixteen, with sixteen representing maximum sensitivity to force and one representing the least sensitivity to force). The movable barrier operator  11  comprises a programmable platform that is programmed in an ordinary fashion to function as a movable barrier operator. In addition, and referring now to FIG. 2, the movable barrier operator  11  is programmed to respond in an interrupt fashion  20  upon receipt of a signal from the sensor  13 . As a result, the operator  11  will receive such an interrupt each time the movable barrier moves a predetermined distance. Upon receiving such an indication the operator  11  then reads  21  an internal timer and calculates  22  an instantaneous period P (or RPM value) for the motor  12 , which value of course corresponds to movement of the movable barrier (such a value is easily calculated by determining how much time is required to incrementally move a predetermined distance as corresponds to the sensor  13  mechanism as is well understood in the art). This value P is then stored  23 . The operator  11  then determines  24  whether this present speed value P exceeds a previously stored value P-HI (if any) that constitutes a highest previous speed value during the present interval or window of review. If true, the operator  11  writes  25  the present speed value P into memory as the new highest speed value for the present interval. The operator  11  also determines  26  when a present speed value P is less than a lowest previous speed value P-LO as identified and stored for the present interval. Again when true, the operator  11  writes  27  the present speed value P into memory as the new lowest speed value for the present interval. Once the operator  11  determines  28  that a predetermined number of readings have been taken in this fashion, the operator  11  calculates  29  a median value P-MEDIAN for the interval. In a preferred embodiment, the median value is calculated by adding the highest speed value P-HI with the lowest speed value P-LO and then dividing by two. P-MEDIAN as calculated is then stored  30  and P-HI and P-LO are cleared to allow re-identification during a subsequent interval.  
         [0021]    So configured, the operator  11  can calculate a value that is representative of speed of the movable barrier over various intervals of time. In particular, a value representing a median value for speed over each interval can be so calculated.  
         [0022]    Referring now to FIG. 3, when the operator  11  begins  31  a new interval, optional force settings as correspond to force setting controls  14  and  15  can be read  32 . The median speed value P-MEDIAN as determined in the previous interval is then read  33  and utilized to determine  34  a threshold value T. In one embodiment, this threshold value T can be calculated as follows: 
           T= ( P - MEDIAN/   256 )( FS+NA )  (1) 
         [0023]    where FS=a force setting of from 1 to 16 as manually set via a corresponding force setting control  14  or  15  as understood in the art and NA=a noise adjustment value that can be used to desensitize the calculation of the threshold value T somewhat from noise in the system. In a preferred embodiment, this threshold value T is calculated once and used during an entire interval as described below in more detail. Again, it should be noted that the interval during which data is gathered to allow calculation of the threshold value T and the interval during which the threshold value T is used both occur during the same movement of the movable barrier from a first position to a second position (such as when moving from an open to a closed position or from a closed to an open position).  
         [0024]    During each interval, as described, the operator  11  calculates a median value P-MEDIAN for the preceding interval as well as a threshold value T that also derives from preceding interval data. Referring now to FIG. 4, with each new period value as sensed  40  by the operator  11  during the next subsequent interval, the operator reads  41  the new period P (as calculated pursuant to the process described above with respect to FIG.2). The operator  11  also reads  42  the P-MEDIAN value as calculated for the previous interval and reads  43  the corresponding threshold value T. In this embodiment the operator  11  then determines  44  a test value TV by taking the absolute value of the present speed value P less the P-MEDIAN median speed value for the preceding interval. This test value TV is then compared with the threshold value T. In this embodiment, the operator  11  determines whether the test value TV is greater than the threshold value T.  
         [0025]    The operator  11  determines  46  whether to react to the present speed value as a function of the comparison of the test value TV to the threshold value T. In particular, when the test value TV exceeds the threshold value T, the operator implements  47  an appropriate corresponding action.  
         [0026]    If the operator  11  responds immediately when the test value TV first exceeds the threshold value T, however, the operator  11  may stop or reverse movement of the movable barrier in error. With reference to FIG. 5, in this embodiment, upon determining  46  that a given present speed value P is such that the test value TV exceeds the threshold value T, the operator  11  can increment  51  a count C and then determine  52  whether this count C exceeds a predetermined value X (such as, for example, “10”). If not, the operator  11  simply carries on in an ordinary fashion while continuing to monitor present speed of the motor/movable barrier. Once the count C has been met, however, the operator  11  then implements  47  a responsive action as before. It should also be noted that each time the operator  11  determines that a present given speed value does not correspond to a situation where the test value TV exceeds the threshold value T, the count C is cleared  53 . So configured, the operator  11  can still safely react to an actual obstacle in sufficient time while significantly avoiding false triggering of an obstacle-detected response.  
         [0027]    Those skilled in the art will recognize that a wide variety of modifications, alterations, and combinations can be made with respect to the above described embodiments without departing from the spirit and scope of the invention, and that such modifications, alterations, and combinations are to be viewed as being within the ambit of the inventive concept.  
         [0028]    This application includes a computer code listing which is entitled  
         [0029]    “S:\Shared\CDO\Lgo-Rjo\RJO-Study\Code\Final0301.S” attached hereto on pages A1-A52.