Programmable one-touch-down power window

Abstract: A power window system equipped with a "one-touch-down" feature for a motor vehicle includes provisions for programming the system to enable and/or disable the one-touch-down feature. The programming is done via a sequence of commands provided to the controller of the one-touch-down feature from various switches on the motor vehicle. In the preferred embodiment of the invention, all such commands are issued from devices already on the vehicle to perform functions other than programming of the "one-touch-down" feature.

Description: The present invention relates to one-touch-down power window control for a motor vehicle. A feature offered on some motor vehicles is a "one-touch-down" power window system. Issuing the appropriate command to such a power window system will cause the window to travel all the way to the bottom of its travel without constant pressing of the power window switch. A typical command to initiate this "one-touch-down" travel is a short (e.g., less than 0.5 second) momentary depression of the power window down switch. However, where the operator of the power window wishes only a slight opening of his window, he can encounter a problem. A short depression of the power window switch to slightly open the window may very well invoke "one-touch-down" window travel. Thus, where the operator desired only a slight opening of the window, the window instead opens all the way. For some people (for example, tobacco smokers), attempting to slightly open the window can be a frequent occurrence. For those people, therefore, the problem described above can provide a frequent annoyance. The present invention therefore seeks to provide a one-touch-down control for a motor vehicle window that mitigates the above inconvenience. US patent US-A-4 683 975 discloses a one touch window operating system that allows the windows to be closed in a one touch operation. It further provides the deactivation of this feature when conditions suggest that the keys may be in the ignition, therefore preventing the locking of keys in the car. The present invention provides a method for operating a power window system of a motor vehicle, wherein the vehicle includes a key-in-ignition switch, a power window control switch, two front door switches and an ignition switch with an "OFF" position, and the power window system is equipped to provide a one-touch-down feature, the method comprising means for disabling said one-touch-down feature, characterised by the steps of: monitoring both front door switches to indicate that both said doors are closed; monitoring said ignition switch to indicate that it is in said "OFF" position; monitoring said key-in-ignition switch to indicate that no ignition key is in the ignition switch; monitoring for the pressing and holding of said power window control switch; monitoring for insertion of an ignition key into the ignition switch within a predetermined time after said power window control switch is pressed and while said power window control switch is being held; monitoring for release of said power window control switch within a predetermined time after said ignition key is inserted into the ignition; and changing the state of the power window system from one-touch-down feature ENABLED to DISABLED or from DISABLED to ENABLED. The present invention allows programming of a power window system to ENABLE and/or DISABLE a one-touchdown feature. In doing so, potential customer annoyances with the operation of a one-touch-down feature can be avoided. Unlike US-A-4 683 975 which temporarily disables the one touch feature only when there is a danger of locking keys in the car, the feature in the an embodiment of the present invention, is user selectable and remains in the chosen state (disabled or enabled) until the user decides otherwise. The invention will now be described further, by way of example, with reference to the accompanying drawings, in which: Figure 1 is a block diagram of a system according to one embodiment of the present invention, Figure 2 is a flow chart of a one-touch-down power window programming procedure, and Figures 3A, 3B and 3C show three different portions of an algorithm executed by the controller in the system of Figure 1 while supervising the programming procedure of Figure 2. Figure 1 shows a system 10 according to one embodiment of the present invention. The system 10 comprises a controller 12. The controller 12 has responsibility for controlling the one-touch-down power window feature of a motor vehicle. Controller 12 may also control a plurality of other features of the motor vehicle. In typical one-touch-down power window control, the operator of the vehicle presses the power window down switch for a pre-determined time. After that time, the operator can release the switch and the window will continue travelling downward until it reaches the end of its travel or until the operator presses the power window up switch or the power window down switch. Controller 12 comprises a microprocessor 14. Microprocessor 14 is preferably a TMS 370 microprocessor from Texas Instruments Corporation. This microprocessor contains 16 kilobytes of on-board read-only memory (ROM), 1 kilobyte of electrically-erasable programmable ROM (EEPROM) and 500 bytes of random-access memory (RAM) .It should be noted that the TMS 370 microprocessor described here is only a preferred microprocessor. Any microprocessor having sufficient resources to perform the functions described in this specification will also work. Controller 12 also comprises signal processing 16. Signal processing 16 provides filtering and voltage division as necessary for the input signals to controller 12. This filtering and voltage division is conventional in the art and need not be described further. Controller 12 also comprises output drivers 18 and 20. Each of the drivers 18 and 20 preferably has a plurality of outputs for driving a plurality of output components. Drivers 18 and 20 receive commands serially via line 22 from microprocessor 14. Drivers 18 and 20 further provide some status information serially via line 24. It should be noted that drivers 18 and 20 each having multiple outputs and being provided data serially are only preferred design considerations. Drivers 18 and 20 can be replaced with individual drivers in like quantity to the numbers of outputs of drivers 18 and 20. Further, data can be transferred in parallel to those drivers. Input devices providing input signals to controller 12 include driver's power window down switch 26 and driver's power window up switch 27. These switches are connected at one side to delayed accessory power of the vehicle and at the other side to controller 12. ("Delayed accessory power" will be described further below.) Driver's power window down switch 26, if held for a pre-determined time, indicates to controller 12 that the driver wishes his power window lowered in "one-touch-down" fashion. Note that driver's power window down switch 26 and driver's power window up switch 27 are also preferably hardwired to power window motor 44, the hard-wiring not shown in Figure 1 for the sake of clarity of the drawing. In manual (i.e., non-one-touch-down) operation of the power window, current for power window motor 44 is supplied directly from switches 26 and 27 in a manner conventional in the art of power windows. In one-touch-down mode, one-touch-down relay 42 provides power to power window motor 44. Another input to controller 12 is ignition switch 28. Ignition switch 28 actually has a number of positions (e.g., "OFF", "RUN", "CRANK", etc.). In Fig. 1, only the contact of ignition switch 28 which is closed in the "RUN T ' position is illustrated. That is, circuit 30 is connected to V 5- (system voltage, nominally 12 volts) when ignition switch 28 is in the RUN position, and not connected to otherwise. Another device providing an input signal to controller 12 is key-in-ignition switch 32. Key-in-ignition switch 32 is closed if an ignition key is physically inserted into the ignition switch. Another input to controller 12 is driver's door switch 34, which is closed if the driver's door is open. Yet another input to controller 12 is front passenger's door switch 35, which is closed if the front passenger's door is open (or the only passenger door if the vehicle is a two-door vehicle). Output devices connected to controller 12 comprise a number of lamps 36, which are indicators for various functions performed by controller 12 (recall that controller 12 can control a plurality of functions of the motor vehicle) .Output devices connected to controller 12 also comprise a number of actuators 38, which can be relay coils and other types of actuators for the various functions performed by controller 12. Another output device connected to controller 12 is delayed accessory relay 40. This relay allows the power windows of the vehicle to be operated for a predetermined amount of time after the vehicle's ignition switch is turned off. More specifically, delayed accessory relay 40 is actuated if both front doors of the vehicle are closed and the ignition is turned from "RUN" to "OFF". If either front door is subsequently opened or if the predetermined delayed accessory time has elapsed, delayed accessory relay 40 opens. Another output device connected to controller 12 is one-touch-down relay 42. This relay is actuated, energising driver's power window motor 44, for as long as controller 12 decides that the driver's power window should be lowered in one-touch-down fashion. An output device contained within controller 12 is tone generator 46. Tone generator 46 generates a tone audible to persons inside the vehicle upon command from microprocessor 14. If the operator wishes the one-touch-down feature to be DISABLED (i.e., one-touch-down mode not to be entered even if driver's power window down switch 26 is held for the appropriate time), he can follow the programming procedure detailed in Figure 2. Each subsequent time the procedure is performed, the ENABLED/DISABLED state of the one-touch-down feature is "toggled" (i.e., DISABLED if the feature is currently ENABLED and ENABLED if the feature is currently DISABLED). Referring to Figure 2, the programming procedure will be described. The operator first makes sure that both front doors of the vehicle are closed (step 100) .Next, ignition switch 28 (Fig. 1) is turned to "RUN" and then to "OFF" (step 102). Next, the operator removes the key from the ignition (step 104) Following the above steps, the operator presses and holds driver's power window down switch 26 (step 106). While holding the switch down, the operator within two seconds reinserts the ignition key into the ignition (step 108) .The operator then waits for a tone to sound (step 110). While the tone is sounding (and it will sound for two seconds), the operator releases the driver's power window down switch (step 112). If steps 100-112 are performed, the ENABLED/DISABLED state of the one-touch-up feature will be "toggled" (step 114) .If the new state is ENABLED, two tones will sound. If the new state is DISABLED, one tone will sound. A distinct advantage of the programming procedure just described is that it is carried out completely with switches already in the vehicle to perform functions other than programming of the one-touch-down feature. Therefore, the programmability is provided with no additional cost for switches to carry out the programming. The algorithm performed by controller 12 in supervising the above programming procedure is illustrated with reference to Figures 3A through 3C. Referring first to Figure 3A, the algorithm starts at step 200. The algorithm is run on a periodic basis, preferably every 20 milliseconds. At step 201, a software timer is incremented. This timer is a location in RAM which is used to measure time for several purposes in this algorithm. At step 202, the algorithm checks whether driver's power window down switch 26 is pressed. If it is pressed, a SW_PRESSED flag is set at step 204. If not, the SW_PRESSED flag is cleared at step 206. At step 208, the algorithm determines whether the ignition key is in the OFF position AND both front doors are closed AND if delayed accessory relay 40 (Fig. 1) is ON. Note that all three of these conditions must be satisfied for steps 100 and 102 of the programming procedure (Fig. 2) to have been correctly performed. If any of the conditions of step 208 are not satisfied, memory location PROG_STATE is set to zero at step 210. (PROG_STATE is a memory location with eight valid values. Each of those values, zero through seven, indicates that the algorithm is in a different state in carrying out the programming of the one-touch-down feature.) PROG_STATE equal to zero, as it is set at step 210, means that the algorithm is not engaged in the programming of the one-touch-down feature. At step 212, the algorithm checks if a write to EEPROM was about to happen due to the algorithm having progressed into PROG_STATE six (PROG_STATE six will be described below). If such a write were about to happen, it is stopped at step 214, in recognition of the fact that at step 210, the algorithm was forced out of the one-touch-down programming sequence and into PROG_STATE zero. The algorithm then exits at step 216. If all of the conditions of step 208 are satisfied, the algorithm checks whether the ignition key is out of the ignition and PROG_STATE is less than two (step 218). If YES, the algorithm checks at step 220 whether PROG_STATE is zero. If YES, and if the driver's power window down switch is pressed (step 222), PROG_STATE increments to one and the algorithm is exited. If at step 220, PROG_STATE was not zero, the algorithm checks at step 226 whether PROG_STATE is one. If YES, and if driver's power down window switch 26 (Fig. 1) is pressed (step 228), the timer is reset and PROG_STATE is incremented to two (step 230). Also, a flag OLD_SW_PRESSED is set equal to the value of the flag SW_PRESSED (step 232) The algorithm is then exited at step 234. If the result of the test at step 218 was NO, the algorithm proceeds to step 236. (Refer now to Figure 3B.) At step 236, the algorithm determines whether PROG_STATE is two. If YES, the algorithm checks at step 238 whether OLD_SW _PRESSED equals SW_PRESSED. If not, the operator has released driver's power window down switch 26 (Fig. 1) prior to step 108 of the programming procedure (Fig. 2) PROG_STATE is thus set to zero (step 240) and the algorithm exits at step 242. If the result of step 238 is YES, the algorithm checks at step 244 whether the timer is greater than two seconds. If YES, the two seconds provided at step 108 of the programming procedure (Fig. 2) for inserting the key in the ignition has been exceeded. PROG_STATE is thus set to zero at step 240 and the algorithm exits at step 242. If the result of step 244 is NO, the two seconds allowed to insert the key in the ignition has not yet run out. Thus, at step 246, the algorithm determines whether the key has been inserted into the ignition. If YES, PROG_STATE advances to three, and the timer is reset to zero (step 248). If no, the algorithm exits at step 250. If at step 236, the algorithm found that it was not in PROG_STATE two, the algorithm checks to step 252 whether it is in PROG_STATE three. If YES, OLD_SW_PRESSED is compared to SW_PRESSED at step 254. If they are not equal, driver's power window switch 26 (Fig. 1) has been prematurely released. In that case, the algorithm sets PROG_STATE to zero at step 256 and exits at step 258. If instead the result of step 254 was YES, the algorithm checks at step 260 whether the timer is equal to one second. If NO, the algorithm exits at step 258. If YES, PROG_STATE is advanced to four and the timer is reset to zero (step 262) The algorithm then exits at step 258. If the result of step 252 was NO (i.e., the algorithm was not in PROG_STATE three), the algorithm proceeds to step 264. At step 264, the algorithm checks if PROG_STATE is four. If YES, the algorithm checks if OLD_SW_PRESSED equals SW_PRESSED (step 266). If NO, PROG_STATE is set to zero (step 268), because driver's power window switch 26 (Fig. 1) was released prematurely in the programming sequence (Fig. 2). If YES, a subroutine is called to actuate a two-second tone, PROG_STATE is incremented to five, and the timer is reset to zero (step 270) .The algorithm is then exited at step 272. If the result of step 264 was NO, the algorithm proceeds to step 274, where the algorithm determines whether PROG_STATE is five. If YES, the algorithm proceeds to step 276, where the algorithm checks whether the timer is less than or equal to two seconds. If YES, the two seconds allowed at programming step 112 (Fig. 2) for the operator to release driver's power window down switch 26 (Fig. 1) has not yet expired. The algorithm thus exits at step 278. On the other hand, if the timer is not less than or equal to two seconds at step 278, the timer is reset to zero and PROG_STATE is incremented to six (step 280). The algorithm then exits at step 278. If the result of step 274 was NO (i.e., the algorithm was not in PROG_STATE five), the algorithm goes to step 282. (Refer now to Figure 3C.) At step 282, the algorithm checks whether PROG_STATE is six. If YES, the algorithm determines at step 284 whether the timer is greater than 200 milliseconds (step 284) .If NO, the algorithm exits at step 286. If YES, the algorithm determines at step 288 whether OLD_SW_PRESSED equals SW_PRESSED. If YES, it is recognised that driver's power window down switch 26 (Fig. 1) has been held too long at programming step 112 (Fig. 2). PROG_STATE is then set to zero at step 290, and the algorithm exits at step 286. If the result at step 288 was NO, the algorithm advances to step 292. There, the present state of the one-touch-down feature (ENABLED or DISABLED) is retrieved from memory. At step 294, the algorithm examines the present state of the one-touch-down feature and determines whether the feature is presently ENABLED. If YES, flag TRANSFER BYTE is set to zero, because the one-touch-down feature is now to be DISABLED. IF NO, flag TRANSFER BYTE is set to one, because the one-touch-down feature is now to be ENABLED. At step 300, a subroutine is called to actuate one 100-millisecond tone. The algorithm then proceeds to step 302, where PROG_STATE is incremented to seven, and the algorithm prepares to write the flag TRANSFER_BYTE to EEPROM memory. The algorithm then exits at step 304. If the result of step 282 was NO, (i.e., PROG_STATE was not equal to six), the algorithm advances to step 306. At step 306, the algorithm checks if PROG_STATE is seven. If NO, the algorithm exits at step 308. If YES, the timer is checked to see if it is greater than 400 milliseconds (step 310).If NO, the algorithm exits at step 308. If YES, the algorithm calls a subroutine to actuate a 100-millisecond tone. The algorithm then exits at step 308.

Claims: A method for operating a power window system of a motor vehicle, wherein the vehicle includes a key-in-ignition switch, a power window control switch, two front door switches and an ignition switch with an "OFF" position, and the power window system is equipped to provide a one-touch-down feature, the method comprising means for disabling said one-touch-down feature, characterised by the steps of: monitoring both front door switches to indicate that both said doors are closed; monitoring said ignition switch to indicate that it is in said "OFF" position; monitoring said key-in-ignition switch to indicate that no ignition key is in the ignition switch; monitoring for the pressing and holding of said power window control switch; monitoring for insertion of an ignition key into the ignition switch within a predetermined time after said power window control switch is pressed and while said power window control switch is being held; monitoring for release of said power window control switch within a predetermined time after said ignition key is inserted into the ignition; and changing the state of the power window system from one-touch-down feature ENABLED to DISABLED or from DISABLED to ENABLED. A method as claimed in claim 1, wherein all said commands are issued from devices already in the vehicle to perform functions other than providing commands for changing said state of the power window system. A method as claimed in Claim 1 or 2, further comprising the step of providing an audible signal accompanying said change of state. A method as claimed in any preceding claim, further comprising the step of issuing an audible signal when said pressing and holding of said driver's window down switch is recognised. A power window operating system for a motor vehicle equipped with various electrical switches, the system having a one-touch feature and means for disabling said one-touch feature under predetermined operating conditions, characterised in that the power window operating system is user-configurable to select the operating state of the one-touch feature by operating electrical switches of the motor vehicle in a predetermined sequence, the one-touch feature remaining in the state selected by the user until intentionally changed by the user.

Inventors: ARGHAVANI-BADRABADI MOHAMMAD H, RUTKOWSKI DAVID JOHN, ARGHAVANI-BADRABADI, MOHAMMAD HASSAN, RUTKOWSKI, DAVID JOHN
Applicants: FORD MOTOR CO, FORD MOTOR COMPANY
Application year: 1995
Main classification: B60R16
IPC codes: B60R16