Abstract: The present invention relates to techniques for differentiating between soft pinch and hard pinch considering real time jerk, while operating a power window of a vehicle. The techniques include receiving a plurality of A pulses and a plurality of B pulses originating from a hall sensors A and B. It further discusses calculating a plurality of average resultant pulses and determining current segment and current threshold for that segment. The techniques further disclose calculating plurality of thresholds including a first threshold, a second threshold and a third threshold from the current threshold value for differentiating between the soft pinch and the hard-pinch using the above threshold values. Fig:l
FIELD OF THE INVENTION:
[0001] The present invention relates to system and method for anti-pinch detection in
power windows in vehicles. More particularly, the present invention relates to system and method for accurately detecting and differentiating a soft pinch condition and hard-pinch condition, considering real time jerk, while operating a power window of the vehicle.
BACKGROUND OF THE INVENTION:
[0002] Automobile Industry has emerged as one of the fastest growing industries in last
couple of decades. Since, it contributes immensely to the economy of the nations, thus automobile engineers always have a challenge ahead of them to come up with more and more advance features/technologies. The challenge is not only limited to come up with new designs or improved technologies but safety is one facet which is also taken very seriously in present day scenario. Safety of the drivers and/or co-passengers in present day scenario is not only limited to bigger aspects such as providing, automatic transmission, air bags, better aerodynamic designs etc. but it deeply rooted to have an impact on every single feature of the automobile. On such area is anti-pinch detection in power windows while operating in auto-up mode. Anti-pinch detection is of great significance as it can avoid accidents that may take place with the driver or any of his co passengers, when the window is operated in auto up mode.
[0003] In general, the automotive operated windows are governed by various
international standards, like FMVSS118 in Japan, MVSS118 in USA and 74/60/EEC in Europe. For those relatives to the elimination of danger to driver and/or co-passengers from accidental death/ injury the requirement uttered by these standards are: (i) detection area: 4mm to 200mm, (ii) maximum pinch force < 100N, (iii) reverse direction on a pinch and (iv) tests with determined deflection ratio object %N/mm to 20N/mm. However, certain problems have been identified with the operation of these power window controls. One such problem is squeezing action at 4mm that is against the regulation. It is also desirable to operate the window in the operating range of 8.5V-16V which is not satisfying in the existing power window.
[0004] The above standards can be met by using the methods of the conventional
technology. In conventional technology pinch detection condition is generally classified into two categories, differential type pinch estimator and low-cost anti-pinch window control system. The differential type pinch estimator is based on the assumptions that the window moves with constant velocity under the unobstructed operating condition and the abrupt drop of velocity is occurred in the pinched condition. However, this algorithm could be inadequate in real situations because the frictional torque of window frame has the normally varying characteristics through the full range of vehicle closure panel. This pinch estimator requires small amount of computation but its performance could be degraded in the presence of measurement noises. On the other hand, the low-cost anti-pinch window control system provides only the poor angular velocity measurements from Hall-sensor.
[0005] Since, none of the above systems accurately performs anti-pinch detection in
automobiles during power windows operating in auto up mode. Thus, there exist a need to improve the detection of pinch in power windows in auto up mode. In particular, there exist a need for a method and system that detect the severity of the pinch and differentiates between a soft pinch and a hard pinch considering real time jerk/ external force conditions.
SUMMARY OF THE INVENTION:
[0006] The present disclosure overcomes one or more shortcomings of the prior art and
provides additional advantages discussed throughout the present disclosure. Additional features and advantages are realized through the techniques of the present disclosure. Other embodiments and aspects of the disclosure are described in detail herein and are considered a part of the claimed disclosure.
[0007] In one non-limiting embodiment of the present disclosure, a method for
differentiating between soft pinch and hard pinch considering real time jerk, while operating a power window of a vehicle is disclosed. Said method comprising initializing a plurality of buffers and a plurality of counters after receiving a signal for moving the power window in an upward direction and receiving a plurality of A pulses and a plurality of B pulses, wherein said plurality of A pulses being originated from a hall sensor A and said plurality of B pulses being
originated from a hall sensor B. The method further discloses accumulating said plurality of A pulses and said plurality B pulses to obtain a plurality of average resultant pulses and determining current segment after an obstruction is sensed while the power window moves in an upward direction. The method further comprises calculating current threshold value for said current segment. Once, the current threshold is determined, the method discusses calculating a first threshold value from the current threshold value for detecting the soft pinch condition and if the condition for soft pinch is satisfied, calculating a second threshold value for conforming the soft pinch condition. In case the soft pinch condition is not satisfied the method calculates a third threshold value for detecting the hard-pinch condition. Based on the above threshold values the method differentiates between the soft pinch and the hard-pinch and continues the movement of the power window in the upward direction when hard-pinch is detected or reversing the movement of the power window when soft pinch is detected, wherein said differentiation is performed considering real-time jerk conditions.
[0008] In another non-limiting embodiment of the present disclosure, obtaining said
plurality of average resultant pulses comprises averaging the plurality of A pulses and B pulses received at different time instances based on Trn= (Tan+Tbn)/2 and calculating time difference based on Tdiffn= (Trn- Tr(n-l)).
[0009] In yet another non-limiting embodiment of the present disclosure, current
segment is determined by total number of pulses counted by a free interval counter/X, where X is number of pulses in each segment.
[0010] In still another non-limiting embodiment of the present disclosure, X varies
between 16 to 64 pulses.
[0011] In yet another non-limiting embodiment of the present disclosure, X is equal to 32
pulses.
[0012] In still another non-limiting embodiment of the present disclosure, calculating the
current threshold value comprises determining the sum of accumulated resultant pulses of previous two segments/2.
[0013] In yet another non-limiting embodiment of the present disclosure, the
accumulated average resultant pulses of previous two segments is not available then average of last 32 accumulated resultant pulses is considered as the current threshold value.
[0014] In still another non-limiting embodiment of the present disclosure, the first
threshold value includes a first lower threshold value and a first upper threshold value, wherein the first lower threshold value (Xthll) is calculated as 90% of the current threshold value and the first upper threshold value (Xthul) is calculated as 110% of the current threshold value.
[0015] In yet another non-limiting embodiment of the present disclosure, for soft pinch
the method checks if the average of last 32 accumulated resultant pulses lies between the first lower threshold value (Xthll) and the first upper threshold value (Xthul), if the condition of soft pinch is satisfied the method proceeds to confirm of the condition for soft pinch.
[0016] In still another non-limiting embodiment of the present disclosure, calculating the
second threshold comprises calculating a second upper threshold value (Xthu2) which is 120% of first upper threshold value (Xthul) and a second lower threshold value (Xthl2) is equal to the first upper threshold value (Xthul).
[0017] In yet another non-limiting embodiment of the present disclosure, the second
lower threshold value (Xthl2) and the second upper threshold value (Xthu2) is fed to time pulse counter to calculate: (i). time pulse counter of pulse A approx. lower threshold value that is equal to time pulse counter value of pulse A + Xthl2, (ii). time Pulse counter of Pulse B approx. lower threshold value that is equal to time Pulse counter value of Pulse 'B' + Xthl2, (iii). time Pulse counter of Pulse A approx. upper threshold value that is equal to time Pulse counter value of Pulse 'A' + Xthu2 + Max Jerk and (iv). time pulse counter of pulse B approx. upper threshold value that is equal to time Pulse counter value of Pulse 'B' + Xthu2+ Max Jerk.
[0018] In still another non-limiting embodiment of the present disclosure, the soft pinch
is confirmed if time pulse counter value is greater than time pulse counter of pulse A approx. lower threshold value and lesser than the time pulse counter of pulse A approx. upper threshold value or time pulse counter value is greater than the time pulse counter of pulse B approx. lower threshold value and lesser than time pulse counter of pulse B approx. upper threshold value.
[0019] In yet another non-limiting embodiment of the present disclosure, the method
comprises calculating average accumulated threshold value for detecting hard pinch based on average accumulated threshold value that is equal to [average accumulated resultant pulse + (average accumulated resultant pulse x division factor)/100], wherein the division factor = {KTD factor - Average voltage w.r.t reference voltage*h}/10.
[0020] In still another non-limiting embodiment of the present disclosure, the average
accumulated threshold value is added to time pulse counter to calculate time pulse counter of pulse A initial threshold value that is equal to time pulse counter value of pulse A + average accumulated threshold value and time pulse counter of pulse B initial threshold value that is equal to time pulse counter value of pulse B + average accumulated threshold value.
[0021] In yet another non-limiting embodiment of the present disclosure, the method
checks the time pulse counter value with the time pulse counter of pulse A initial threshold value and time pulse counter of pulse B initial threshold value, if the same is greater than the third threshold value is calculated.
[0022] In still another non-limiting embodiment of the present disclosure, the third
threshold value includes a third lower threshold value (Xthl3) which is calculated as 105% of the threshold of last segment and a third upper threshold value (Xthu3) which is 125% of the average accumulated resultant pulse.
[0023] In yet another non-limiting embodiment of the present disclosure, the third lower
threshold value and the third upper threshold value is added to time pulse counter value to calculate (i). time pulse counter of pulse A approx. lower threshold value that is equal to time pulse counter value of pulse A + Xthl3, (ii). time pulse counter of pulse B approx. lower threshold value that is equal to time pulse counter value of pulse B + Xthl3, (iii). time Pulse counter of pulse A approx. upper threshold value that is equal to time pulse counter value of pulse A + Xthu3+ Max Jerk and (iv). time pulse counter of pulse B approx. upper threshold value that is equal to time pulse counter value of pulse B + Xthu3+ Max Jerk.
[0024] In still another non-limiting embodiment of the present disclosure, the hard pinch
is confirmed if (i). time pulse counter value is greater than time pulse counter of pulse A approx. lower threshold value and lesser than the time pulse counter of pulse A approx. upper threshold
6
value or (ii). time pulse counter value is greater than the time pulse counter of pulse B approx. lower threshold value and lesser than time pulse counter of pulse B approx. upper threshold value.
[0025] In another non-limiting embodiment of the preset disclosure, a system for
differentiating between a soft pinch and a hard pinch considering real-time jerk, while operating a power window of a vehicle is disclosed. The system comprises a power window switch, a motor operatively connected to the power window switch, wherein the motor is configured to move the window up and down in response to signals received from the power window switch and a controller connected to the power window switch and the motor, wherein said controller is configured to initialize a plurality of buffers and a plurality counters after receiving a signal from the switch for moving the power window in an upward direction. The controller is further configured to receive a plurality of A pulses and a plurality of B pulses originated from a hall sensor A and a hall sensor B, affixed 180° apart from each other at shaft of the motor, wherein the hall pulses A and B are received in response to the auto-up signal sent from the controller to the motor. The controller accumulates said plurality of A pulses and said plurality B pulses to obtain a plurality of average resultant pulses and determines current segment after an obstruction is sensed while the power window moves in an upward direction. The controller then calculates current threshold value for said segment. After the current threshold is calculated the controller calculates a first threshold value from the current threshold value for detecting the soft pinch condition and if the condition for soft pinch is satisfied it calculate a second threshold value for conforming the soft pinch condition. The controller is also configured to calculate a third threshold value for detecting the hard-pinch condition, if the soft pinch condition is not satisfied. Based on the above threshold values, the controller differentiates between the soft pinch and the hard-pinch and controls the motor to continue the movement of the power window in the upward direction when hard-pinch is detected or reversing the movement of the power window when soft pinch is detected, wherein said differentiation is performed considering real-time jerk conditions.
[0026] In another non-limiting embodiment of the present disclosure, the controller is
configured to obtain said plurality of average resultant pulses by averaging the plurality of A pulses and B pulses received at different time instances based on Trn= (Tan+Tbn)/2 and calculating time difference based on Tdiffn= (Trn- Tr(n-1)).
7
[0027] In yet another non-limiting embodiment of the present disclosure, the controller
determines the current segment by calculating total number of pulses counted by a free interval counter/X, where X is number of pulses in each segment.
[0028] In still another non-limiting embodiment of the present disclosure, X varies
between 16 to 64 pulses.
[0029] In yet another non-limiting embodiment of the present disclosure, X is equal to 32
pulses.
[0030] In still another non-limiting embodiment of the present disclosure, the controller
calculates the current threshold value by determining the sum of accumulated resultant pulses of previous two segments/2.
[0031] In yet another non-limiting embodiment of the present disclosure, if the
accumulated average resultant pulses of previous two segments is not available then the controller is configured to consider average of last 32 accumulated resultant pulses as the current threshold value.
[0032] In still another non-limiting embodiment of the present disclosure, the first
threshold value includes a first lower threshold value and a first upper threshold value. The controller is configured to calculate the first lower threshold value (Xthl1) as 90% of the current threshold value and the first upper threshold value (Xthu1) as 110% of the current threshold value.
[0033] In yet another non-limiting embodiment of the present disclosure, the controller
checks if the average of last 32 accumulated resultant pulses lies between the first lower threshold value (Xthl1) and the first upper threshold value (Xthu1), if yes, the controller raises a flag for soft pinch and proceeds to confirm the soft pinch.
[0034] In still another non-limiting embodiment of the present disclosure, the controller
is configured to calculate the second threshold value, wherein calculating the second threshold value comprises calculating a second upper threshold value (Xthu2) which is 120% of first upper threshold (Xthu1) and a second lower threshold (Xthl2) equal to the first upper threshold (Xthu1).
8
[0035] In yet another non-limiting embodiment of the present disclosure, the controller
feeds the second lower threshold value (Xthl2) and the second upper threshold value (Xthu2) to time pulse counter to calculate: (i). time pulse counter of pulse A approx. lower threshold value that is equal to time pulse counter value of pulse A + Xthl2, (ii). time Pulse counter of Pulse B approx. lower threshold value that is equal to time Pulse counter value of Pulse ‘B’ + Xthl2, (iii). time Pulse counter of Pulse A approx. upper threshold value that is equal to time Pulse counter value of Pulse ‘A’ + Xthu2 + Max Jerk and (iv). time pulse counter of pulse B approx. upper threshold value that is equal to time Pulse counter value of Pulse ‘B’ + Xthu2+ Max Jerk.
[0036] In still another non-limiting embodiment of the present disclosure, the controller
confirms the soft pinch if (i). time pulse counter value is greater than time pulse counter of pulse A approx. lower threshold value and lesser than the time pulse counter of pulse A approx. upper threshold value or (ii). time pulse counter value is greater than the time pulse counter of pulse B approx. lower threshold value and lesser than time pulse counter of pulse B approx. upper threshold value.
[0037] In yet another non-limiting embodiment of the present disclosure, the controller is
configured to calculate average accumulated threshold value for detecting hard pinch based on average accumulated threshold value that is equal to [average accumulated resultant pulse + (average accumulated resultant pulse x division factor)/100], wherein the division factor = {KTD factor - Average voltage w.r.t reference voltage*h}/10.
[0038] In still another non-limiting embodiment of the present disclosure, the controller
is configured to add to time pulse counter average accumulated threshold value to calculate (i). time pulse counter of pulse A initial threshold value that is equal to time pulse counter value of pulse A + average accumulated threshold value and (ii). time pulse counter of pulse B initial threshold value that is equal to time pulse counter value of pulse B + average accumulated threshold value.
[0039] In yet another non-limiting embodiment of the present disclosure, the controller
checks the time pulse counter value with the time pulse counter of pulse A initial threshold value and time pulse counter of pulse B initial threshold value, if the same is greater then the controller calculates the third threshold value.
9
[0040] In still another non-limiting embodiment of the present disclosure, the third
threshold value includes a third lower threshold value (Xthl3) which is calculated by the controller as 105% of the threshold of last segment and a third upper threshold value (Xthu3) which is calculated by the controller as 125% of the average accumulated resultant pulse.
[0041] In yet another non-limiting embodiment of the present disclosure, the controller
adds to time pulse counter value, third lower threshold value and the third upper threshold value to calculate (i). time pulse counter of pulse A approx. lower threshold value that is equal to time pulse counter value of pulse A + Xthl3, (ii). time pulse counter of pulse B approx. lower threshold value that is equal to time pulse counter value of pulse B + Xthl3, (iii). time Pulse counter of pulse A approx. upper threshold value that is equal to time pulse counter value of pulse A + Xthu3+ Max Jerk and (iv). time pulse counter of pulse B approx. upper threshold value that is equal to time pulse counter value of pulse B + Xthu3+ Max Jerk.
[0042] In still another non-limiting embodiment of the present disclosure, the controller
confirms hard pinch if (i). time pulse counter value is greater than time pulse counter of pulse A approx. lower threshold value and lesser than the time pulse counter of pulse A approx. upper threshold value or (ii). time pulse counter value is greater than the time pulse counter of pulse B approx. lower threshold value and lesser than time pulse counter of pulse B approx. upper threshold value.
OBJECTS OF THE INVENTION:
[0043] The main object of the present invention is to provide a more accurate system for
anti-pinch detection in vehicles for power windows operating in auto up mode.
[0044] Another main object of the present invention is to detect a soft pinch and a hard
pinch based on pulses received from the hall sensors.
[0045] Yet another object of the present invention is to differentiate between the soft
pinch and hard pinch conditions considering real time jerk.
[0046] Still another object of the present invention is to avoid human injury/death by
accurately detecting and differentiating between soft pinch and hard pinch.
10
BRIEF DESCRIPTION OF DRAWINGS:
[0047] The accompanying drawings, which are incorporated in and constitute a part of
this disclosure, illustrate exemplary embodiments and, together with the description, serve to explain the disclosed embodiments. In the figures, the left-most digit(s) of a reference number identifies the figure in which the reference number first appears. The same numbers are used throughout the figures to reference like features and components. Some embodiments of system and/or methods in accordance with embodiments of the present subject matter are now described, by way of example only, and with reference to the accompanying figures, in which:
[0048] Fig. 1 illustrates method steps for detecting anti-pinch using the system of figure
4, by way of flow diagram, according to various embodiments.
[0049] Figure 2A illustrates wave diagram of pulse A received from hall sensor A,
according to various embodiments.
[0050] Figure 2B illustrates wave diagram of pulse B received from hall sensor B,
according to various embodiments.
[0051] Figure 2C illustrates wave diagram resulting from accumulation of pulse A and
Pulse B together, according to various embodiments.
[0052] Figure 3 illustrates flow chart for determining max/min position of window using
accumulated pulse represented in figure 2C, according to various embodiments
[0053] Fig. 4 illustrates functional block diagram of anti-pinch system for power
windows in vehicles, according to various embodiments.
[0054] Fig. 5 illustrates perspective view of an automobile window being operated using
the technology of the present invention, satisfying safety standard MVSS118, according to various embodiments
[0055] It should be appreciated by those skilled in the art that any block diagrams herein
represent conceptual views of illustrative systems embodying the principles of the present subject matter. Similarly, it will be appreciated that any flow charts, flow diagrams, state
11
transition diagrams, pseudo code, and the like represent various processes which may be substantially represented in computer readable medium and executed by a computer or processor, whether or not such computer or processor is explicitly shown.
DETAILED DESCRIPTION OF DRAWINGS:
[0056] In the present document, the word "exemplary" is used herein to mean
"serving as an example, instance, or illustration." Any embodiment or implementation of the present subject matter described herein as "exemplary" is not necessarily to be construed as preferred or advantageous over other embodiments.
[0057] While the disclosure is susceptible to various modifications and alternative
forms, specific embodiment thereof has been shown by way of example in the drawings and will be described in detail below. It should be understood, however that it is not intended to limit the disclosure to the particular forms disclosed, but on the contrary, the disclosure is to cover all modifications, equivalents, and alternative falling within the scope of the disclosure.
[0058] The terms “comprises”, “comprising”, “include(s)”, or any other variations
thereof, are intended to cover a non-exclusive inclusion, such that a setup, system or method that comprises a list of components or steps does not include only those components or steps but may include other components or steps not expressly listed or inherent to such setup or system or method. In other words, one or more elements in a system or apparatus proceeded by “comprises… a” does not, without more constraints, preclude the existence of other elements or additional elements in the system or apparatus.
[0059] Embodiments of the present disclosure relates to a method and a system for
differentiating between soft pinch and hard pinch considering real time jerk, while operating a power window of a vehicle. Present disclosure discusses initializing a plurality of buffers and a plurality of counters after receiving a signal for moving the power window in an upward direction and receiving a plurality of A pulses and a plurality of B pulses, wherein
12
said plurality of A pulses being originated from a hall sensor A and said plurality of B pulses being originated from a hall sensor B. Present disclosure further discusses accumulating said plurality of A pulses and said plurality B pulses to obtain a plurality of average resultant pulses and determining current segment after an obstruction is sensed while the power window moves in an upward direction. The present disclosure then talks about calculating current threshold value for said current segment. Once, the current threshold is determined, calculating a first threshold value from the current threshold value for detecting the soft pinch condition and if the condition for soft pinch is satisfied, calculating a second threshold value for conforming the soft pinch condition. In case the soft pinch condition is not satisfied the present disclosure discloses calculating a third threshold value for detecting the hard-pinch condition. The present disclosure uses the above threshold values to differentiates between the soft pinch and the hard-pinch and continues the movement of the power window in the upward direction when hard-pinch is detected or reversing the movement of the power window when soft pinch is detected, wherein said differentiation is performed considering real-time jerk conditions.
[0060] In the following detailed description of the embodiments of the disclosure,
reference is made to the accompanying drawings that form a part hereof, and in which are shown by way of illustration specific embodiments in which the disclosure may be practiced. These embodiments are described in sufficient detail to enable those skilled in the art to practice the disclosure, and it is to be understood that other embodiments may be utilized and that changes may be made without departing from the scope of the present disclosure. The following description is, therefore, not to be taken in a limiting sense.
[0061] Figure 1 illustrates method step, by way of flow diagram 100 for performing
anti-pinch detection in power windows using the system 400 of figure 4, disclosed later in the description. The method initiates at step 102. In particular, the method initiates after a command for one of closing or opening of the power window of a vehicle is activated. After the method is initiated, at step 104 all buffers and counters, placed inside the controller (reference to be made to figure 4), are reset to zero. In an exemplary embodiment, all the buffers and counters including free run timer, pulse buffer of accumulated pulse, time pulse
13
counter of pulse A, time pulse counter of pulse B, pulse gap timer, time pulse counter, time revolution and other are reset to zero after receiving one of at least auto-up, auto-down, manual up and manual down command. In another exemplary embodiment, resetting the buffers and counters (not shown) to zero may be performed at any position and not only when the window is completely open. In particular, if the window glass has covered half the distance in upward direction and the vehicle comes to a halt, due to any reason, in that case also after receiving the any of the above commands, again, the buffer and counters will be reset to zero.
[0062] Once, all the buffers/counters are reset to zero. At step 106, a plurality of A
pulses and plurality of B pulses are received by the controller (reference to be made to figure 4). In particular, the plurality of A pulses received by the controller are generated by a hall sensor A (reference to be made to figure 4) placed inside a motor (reference to be made to figure 4) and plurality of B pulses B received by the controller are generated by a hall sensor B (reference to be made to figure 4) placed inside a motor (reference to be made to figure 4). In an exemplary embodiment, after all the timers/ counters/buffers are being initialized to zero, the motor starts receiving the pulses from the hall sensors A and B. It is to be appreciated that the hall sensors placed inside the motor provide the pulses to the motor in response to the input signals received from the controller, wherein the motor transfers these pulses perpetually to the controller. A skilled person will appreciate that the Hall Effect sensor is a transducer that varies its output voltage in response to a magnetic field. In another exemplary embodiment, it may be noted that in addition to timers/counter/buffers being reset to zero, a free run counter (not shown), in response to any commend given by a user, is configured to count independently and increment count after every ‘x’ µs. So, the free interval timer counts for both the rising and the falling edges of the both the hall pulses i.e. Pulse ’A’ and Pulse ‘B’.
[0063] At step 108, the plurality of pulses received from hall sensor A and hall
sensor B are accumulated to get a plurality of average resultant pulse. In particular, to obtain plurality of average resultant pulse, an average of plurality of A pulses and plurality of B pulses at different time instances is calculated using Trn= (Tan+Tbn)/2. In addition, time difference for average pulses is calculated using Tdiffn= (Trn- Tr(n-1)). To understand
14
this in detail reference may be made to figures 2A-2C. In an exemplary embodiment, Figure 2A depicts a waveform of pulses A received from hall sensor A at different time instances. For example, Ta0 denotes a pulse “a” received at time instance zero, Ta1 denotes a pulse “a” received at time instance 1 and so on. In other words, Figure 2A, shows wavelength of pulse A at different time intervals such as Ta0, Ta1, Ta2 and so on. Similarly, figure 2B depicts a waveform of pulses B received from the hall sensor B at different time instances. For example, Tb0 denotes a pulse “b” received at time instance zero, Tb1 denotes a pulse “b” received at time instance 1 and so on. In simple terms, Figure 2B, shows wavelength of pulse B at different time intervals such as Tb0, Tb1, Tb2 and so on. Further, it would be appreciated from figure 2A and 2B that the consideration of count is at both the rising as well as at the falling edge. So, as either the rising or the falling edge is being detected, the count is being incremented at every edge in both the pulses i.e. Pulse ‘A’ and Pulse ‘B’. Further, Figure 2C depicts a waveform showing the accumulation of plurality of A pulses and Plurality of B pulses at different time instances to get plurality of average resultant pulses.
[0064] To accumulate the pulses as shown in figure 2C, firstly, average of each pulse of
Pulse ‘A’ and Pulse ‘B’ is calculated using:
Tr0= (Ta0+Tb0) Tr1= (Ta1+Tb1)/2 Tr2= (Ta1+Tb1)/2 And so on till Tn i.e. Tn= (Tan+Tbn)/2 and
then the average of the difference between them is calculated as discussed below:
Tdiff1=Tr1- Tr0, Tdiff2=Tr2- Tr1, Tdiff3=Tr3- Tr2 And so on till Tdiffn i.e.
Tdiffn= (Trn- Tr(n-1)).
………………………… (1)
Wherein, Tr1 represents average of pulse A at time Ta1 and pulse B at time Tb1. In similar fashion average of pulses A and B are calculated till nth value of pulse A and pulse B. On
15
the other hand, Tdiff1 represents time difference calculated using average of pulse calculated Tr1 and with respect average for pulse calculated Tr0 discussed above. In similar fashion Tdiffn is calculated till nth pulse.
[0065] At step 110, current segment in which the window is running is determined. In
particular, the current segment is determined after an obstruction is sensed while the power window moves in an upward direction. In an exemplary embodiment, the segments in which the window is divided are imaginary segments. These segments may be calculated by dividing the total number of pulse counted by the free interval timer, at the moment obstruction is sensed, by X number of pulse, wherein the X denotes the number of pulses in each segment. In particular, the number of pulses in a segment may be varied from 16-64. However, the present disclosure explains the invention by considering 32 pulses in a segment. In other words, to fix the number of segments, the total number of pulses in the whole run distance of the window is divided into ‘n’ segments, wherein each segment can consist up to ‘x’ pulses count.
[0066] At step 112, current threshold for the current segment is calculated. In particular,
the current threshold value is determined based on the accumulated average resultant pulses of last two segments. Specifically, to calculate the current threshold of the current segment, sum of accumulated resultant pulses of previous two sections is taken and the same is divided by 2. In an example, when an obstruction is sensed the current segment as discussed in step 110 is calculated. For example, when an obstruction is sensed, if the total number of counts of the free interval counter/timer is suppose say 640 then dividing the same by 32 pulses gives us a resultant 20 i.e. the window is currently in 20th segment. Once, it is determined that the window is in 20th segment, to calculate the current threshold sum of accumulated resultant pulses of last two segments, i.e. 18th and 19th segments is taken and the same is divided by 2 which give the current threshold. It is to be noted that the free interval timer is the counter that updates its count every pulse edge detection and which starts from 0th position viz. window min position. In another exemplary embodiment, it may be noted that if the accumulated average resultant pulses of previous two segments is not available then average of last 32 accumulated resultant pulses is considered as the current threshold value. In particular, if the window is in a segment below 3rd segment then average of last 32 accumulated resultant pulses is considered as the current
16
threshold value.
[0067] Next the method moves towards calculating a first threshold value from the
current threshold value, at step 114. The first threshold is calculated to check the condition for soft pinch, while the power window is moving in the upward direction. In case the primary condition for the soft pinch is satisfied the method moves towards confirmation of soft pinch. In an exemplary embodiment, the first threshold value comprises a first upper threshold value (Xthu1) and a first lower threshold value (Xthl1). The first lower threshold value (Xthl1) is determined by calculating 90% of the current threshold value and the upper threshold value (Xthu1) is determined by calculating 110% of the current threshold value. In a specific embodiment:
Xthl1 =90% of the current threshold; and 1
I (2)
Xthu1 = 110% of the current threshold J
Now for soft pinch detection, average of x accumulated resultant pulses is calculated using:
(Tdiff1+Tdiff2+Tdiff3+………………………………………+Tdiffx)/ x …. (3)
Wherein, in the present scenario x is considered to be 32. Thus, if the average of last 32 accumulated resultant pulses lies between the first lower threshold (Xthl1) and the first upper threshold (Xthu1), then the primary condition of soft pinch is satisfied, and the method moves towards confirming soft pinch. Once, the primary soft pinch condition is satisfied, a second threshold value is calculated to confirm the soft pinch. The second threshold also includes a second upper threshold value (Xthu2) and a second lower threshold value (Xthl2). The second upper threshold value (Xthu2) is determined by calculating 120% of the first upper threshold (Xthu1) value and the second lower threshold value (Xthl2) is same as first upper threshold value (Xthu1). In another specific embodiment:
17
Xthl2 = Xthu1; and Xthu2 = 120% of Xthu1
(4)
[0068] The second upper threshold value (Xthu2) and the second lower threshold
value (Xthl1) are then added to a Time Pulse counter of ‘A’ and to a Time Pulse counter of ‘B’ to calculate:
time pulse counter of pulse A approx. lower threshold value =
time pulse counter value of pulse A + Xthl2;
time Pulse counter of Pulse B approx. lower threshold value =
time Pulse counter value of Pulse ‘B’ + Xthl2;
time Pulse counter of Pulse A approx. upper threshold value =
time Pulse counter value of Pulse ‘A’ + Xthu2 + Max Jerk; and
time pulse counter of pulse B approx. upper threshold value =
time Pulse counter value of Pulse ‘B’ + Xthu2+ Max Jerk
> (5)
[0069] For the calculation of Max Jerk, used above, the Time difference as explained in
(1) and (3) is considered,
^
i.e.
if (Tdiff1 > Tdiff2), then, Max Jerk [0] = Tdiff1- Tdiff2; and
if (Tdiff2 > Tdiff3), then, Max Jerk [1] = Tdiff2- Tdiff3 and so on.
(6)
>
Now, if (Max Jerk [0] > Max Jerk [1]), then, Max Jerk= Max Jerk [0]; else if (Max Jerk [0] < Max Jerk [1]), then, Max Jerk= Max Jerk [1].
J
[0070] To confirm soft pinch, time pulse counter value are then checked against the time
pulse counter approx. lower threshold value and the time pulse counter approx. upper threshold value. In a specific embodiment, for confirming soft pinch following conditions must be satisfied:
18
time pulse counter value > time pulse counter of pulse A approx. lower threshold value and < the time pulse counter of pulse A approx. upper threshold value; or
time pulse counter value > the time pulse counter of pulse B approx. lower threshold value and < time pulse counter of pulse B approx. upper threshold value.
A
> (7)
J
[0071] The method confirms soft pinch only after confirming the above condition being
satisfied “i” number of times. In particular, if the above condition is satisfied then, the method waits for a predetermined amount of time and the same condition is repeated “i” number of times, wherein the “i” may vary from 1 to 255. If the soft pinch is confirmed “i” number of times, then the power window is rolled in the downward direction. If the same is not satisfied, then the method moves to next step. In another embodiment, if the above condition is true for the first time, but the above condition does not repeat in the given period of time, then the method does not consider it as soft pinch and moves to next step.
[0072] At the next step of the method, average accumulated threshold value is calculated
to detect hard pinch. In an exemplary embodiment, average accumulated threshold value is equal to average accumulated resultant pulse + (average accumulated resultant pulse x division factor)/100]. In another exemplary embodiment, average voltage w.r.t reference voltage is calculated using:
(Present Battery voltage - Reference voltage)/100, and Division Factor is calculated using: Division Factor = {KTD factor - Average voltage w.r.t reference voltage*h}/10, where “h” is variable which is voltage dependent and KTD factor = constant, taken as 1000. Thus, in an exemplary embodiment, if the battery voltage is assumed to be 12000mV and Reference voltage is assumed to be 7000mV and KTD Factor = 1000 and h = Battery voltage/1000, then h = 12000/1000, which gives h= 12. Therefore, Average voltage w.r.t reference voltage comes out to be (12000-7000)/100 = 50 and Division Factor comes out to be {1000 - (50*12)}/10 = 40.
[0073] It must be noted that if the condition of soft pinch as discussed above is not
satisfied, the method moves to check for the hard pinch. In particular embodiment, if average
19
accumulated resultant pulse does not lie between the first lower threshold value (Xthl1) and first upper threshold value (Xthu1) the method clears the flag of soft pinch and checks whether it is a condition of hard pinch. In the event of detection of hard pinch average accumulated threshold value is added to time pulse counter to calculate:
time pulse counter of pulse A initial threshold value = time pulse counter
value of pulse A + average accumulated threshold value;
> (8) time pulse counter of pulse B initial threshold value = time pulse counter
value of pulse B + average accumulated threshold value.
J
Here, a pulse auto increment timer is taken which updates its current count every 100 µs. Initially, pulse auto increment timer count = 0; for (time >= 100 µs) {
Time pulse counter ++;
Time = 0; }
[0074] Now, if (Time pulse counter > Time Pulse counter of Pulse ‘A’ Initial Th) and
(Time pulse counter > Time Pulse counter of Pulse ‘B’ Initial Th), then, a new threshold range for hard pinch detection is calculated, at step 116. In an embodiment, if the time pulse counter value is found greater than the time pulse counter of pulse A initial threshold value and time pulse counter of pulse B initial threshold value, as discussed above, the third threshold value is calculated at step 116. In another embodiment, the third threshold includes a third lower threshold value (Xthl3) and a third upper threshold value (Xthu3). The third lower threshold (Xthl3) is determined by calculating 105% of the threshold of last segment, wherein threshold of last segment is equal to time period average of 32 pulses in the last segment/32. On the other hand, the third upper threshold (Xthu3) is determined by calculating 125% of the average accumulated resultant pulses. It is clearly evident from the above, unlike first threshold and second threshold, the third threshold is not determined on the basis of previous two segments. As next step, the method discloses adding the third lower threshold value and the third upper
20
threshold value to time pulse counter value to calculate:
time pulse counter of pulse A approx. lower threshold value = ^
time pulse counter value of pulse A + Xthl3;
time pulse counter of pulse B approx. lower threshold value =
time pulse counter value of pulse B + Xthl3; I
V (9)
time Pulse counter of pulse A approx. upper threshold value =
time pulse counter value of pulse A + Xthu3+ Max Jerk; and
time pulse counter of pulse B approx. upper threshold value =
time pulse counter value of pulse B + Xthu3+ Max Jerk J
wherein, the Max jerk may be calculated as discussed in (6). Now to confirm hard pinch condition, time pulse counter value is compared to the time pulse counter approx. lower threshold value and the time pulse counter approx. upper threshold value. In particular, if:
time pulse counter value > time pulse counter of pulse A approx. lower threshold value and < the time pulse counter of pulse A approx. upper threshold value; or
f > (10)
time pulse counter value is > the time pulse counter o pulse B f approx. lower threshold value and < time pulse counter of pulse B approx. upper threshold value
J
If the above condition is satisfied “i” number of times, then hard pinch is confirmed else not. In particular embodiment, if above condition is true, then the method waits for a pre-determined period of time and if the same condition repeats ‘i’ no of times, then Hard pinch condition is confirmed, where ‘i’ can be varied from a range of 1 to 255). However, if the above condition is true for the first time, but the above condition does not repeat in the given period of time, then the method clears the hard-pinch flag.
[0075] Thus based on the first, second and third threshold values calculated in above
21
steps, the method differentiates between the soft pinch condition and the hard-pinch condition, at step 118. In an exemplary embodiment, if the condition of hard pinch is detected, then the method continues moving the power window in the upward direction, at step 120. However, if the condition of soft pinch is detected, then the movement of power window is revered by controlling the movement of motor (not shown), at step 120. In a particular embodiment, soft pinch relates to conditions where for example, child’s finger, driver/co-passengers hand or neck is accidently stuck in the window. On the other hand, the hard pinch relates to conditions where for example, someone tries to forcibly pull the window down i.e. in case of theft etc.
[0076] Figure 3 discloses in general method steps for determining max/min position of
window using accumulated pulse. The method starts at step 302 where the hall sensors (reference to be made to figure 4) recognizes the input signals coming from the controller (reference to be made to figure 4) through the relay driver section (not shown) and all independent counters are initialized with value=0; and the flag for continuous polling is set to 0. At step 304, type of command is detected, for example, at step 304, if the command is detected as down, then method moves to step 306 and if the command is detected to be up command method moves to step 308. In a specific embodiment, if the above command is down command then in the subsequent step 310 mode of command i.e. auto or manual is detected. In either case, the method decrements position and count, at step 312. In the next step 314, it is determined whether the current position is minimum or not. If the current position is found out to be minimum, then the method stops and if the current position is not minimum, then the method moves back to step 312.
[0077] On the other hand, if, at step 304 it is detected that the command is an up
command, then method moves to the next step 308, where the mode of command is detected. In either case the method moves to next step 316, where the position and count is incremented. In the next step 318, the position of window is checked, if it is found to be maximum, then method ends, i.e. the Free run timer reaches its maximum/ minimum count, then the window is at its peak/ minimum position and the motor stops. However, if the position is not found to be maximum, then method moves to step 316. Specifically, in an embodiment when the Free run timer reaches its maximum/ minimum count, then the window is at its peak/ minimum position
22
and the motor stops. Further, it is to be noted that the method step discussed in view of figure 2, above, can be applied more beneficially to auto-up command.
[0078] Figure 4 discloses a system 400 for performing anti-pinch detection in power
windows of a vehicle. In particular, figure 4 discloses a system 400 for differentiating between a soft pinch and a hard pinch considering real-time jerk, while operating a power window of the vehicle. The system 400 includes a power window switch 402, a motor 406 operatively connected to the power window switch 402, wherein the motor 406 is a DC motor configured to move the power window (not shown) of the vehicle in up-ward and down-ward directions in response to signals received from the power window switch 402. The system 400 further comprises a controller 404 connected to the power window switch 402 and the motor 406. In particular, the controller 404 is configured to receive signals from the power window switch 402 and transfer the same to the motor 406. The controller 404 connecting the power window switch 402 and motor 406 is further configured to initialize a plurality of buffers and a plurality counters to zero after receiving a signal from the power window switch 402 for moving the power window in an upward direction. In an exemplary embodiment, all the buffers and counters including free run timer, pulse buffer of accumulated pulse, time pulse counter of pulse A, time pulse counter of pulse B, pulse gap timer, time pulse counter, time revolution and other are reset to zero after receiving one of at least auto-up, auto-down, manual up and manual down command. In a specific embodiment, all these counters, timers and buffers may be placed inside the controller 404 or outside the controller 404 in any other dedicated hardware, software or firmware. However, the same have not been shown explicitly in the figure 4.
[0079] Once, the controller 404 resets all the buffers/counters to zero. The controller 404
starts receiving a plurality of A pulses generated by a hall sensor A 408 placed inside the motor 406 and plurality of B pulses generated by a hall sensor B 410 placed inside a motor 406. In an exemplary embodiment, after all the timers/counters/buffers are being initialized to zero, the motor 406 starts receiving the pulses from the hall sensor A 408 and hall sensor B 410. It is to be appreciated that the hall sensor A and B are placed 180° apart from each other at the shaft of the motor 406. Further, it will be appreciated that hall sensor A 408 and hall sensor B 410 provide pulses to the motor 406 in response to the input signals received from the controller 404, wherein
23
the motor 406 transfers these pulses perpetually to the controller 404.
[0080] The controller 404 is further configured to receive a plurality of pulses from hall
sensor A 408 and hall sensor B 410 and accumulate these pulses, in buffers (not shown), to get a plurality of average resultant pulse. In particular, to obtain plurality of average resultant pulse, the controller 404 calculates an average of plurality of A pulses and plurality of B pulses at different time instances using Trn= (Tan+Tbn)/2. In addition, the controller 404 calculates time difference for average pulses using Tdiffn= (Trn- Tr(n-1)). To understand this in detail reference may be made to figures 2A-2C. In an exemplary embodiment, Figure 2A depicts a waveform of pulses A received by the controller 404 from the hall sensor A 408 at different time instances. For example, Ta0 denotes a pulse “a” received by the controller 404 at time instance zero, Ta1 denotes a pulse “a” received at time instance 1 and so on. In other words, Figure 2A, shows wavelength of pulse A at different time intervals such as Ta0, Ta1, Ta2 and so on. Similarly, figure 2B depicts a waveform of pulses B received by the controller 404 from the hall sensor B at different time instances. For example, Tb0 denotes a pulse “b” received by the controller 404 at time instance zero, Tb1 denotes a pulse “b” received at time instance 1 and so on. In simple terms, Figure 2B, shows wavelength of pulse B at different time intervals such as Tb0, Tb1, Tb2 and so on. Further, it would be appreciated from figure 2A and 2B that the consideration of count is at both the rising as well as at the falling edge. So, as either the rising or the falling edge is being detected, the count is being incremented at every edge in both the pulses i.e. Pulse ‘A’ and Pulse ‘B’. Further, Figure 2C depicts a waveform showing the accumulation of plurality of A pulses and Plurality of B pulses, by the controller 404, at different time instances to get plurality of average resultant pulses. Further it will be appreciated that due to the position of hall sensor A 408 and hall sensor B 410 inside the motor 406 their exist a phase difference of 180° between these pulses.
[0081] Further, to accumulate the pulses as shown in figure 2C, firstly, the controller 404
is configured to calculate the average of each pulse of Pulse ‘A’ and Pulse ‘B’ using:
Tr0= (Ta0+Tb0) Tr1= (Ta1+Tb1)/2 Tr2= (Ta1+Tb1)/2
24
And so on till Tn i.e. Tn= (Tan+Tbn)/2 and
then the average of the difference between them is calculated by the controller 404 as discussed below:
Tdiff1=Tr1- Tr0, Tdiff2=Tr2- Tr1, Tdiff3=Tr3- Tr2 And so on till Tdiffn i.e.
Tdiffn= (Trn- Tr(n
………………………… (1)
Wherein, Tr1 represents average of pulse A at time Ta1 and pulse B at time Tb1. In similar fashion average of pulses A and B are calculated by the controller 404 till nth value of pulse A and pulse B. On the other hand, Tdiff1 represents time difference calculated using average of pulse calculated Tr1 and with respect average for pulse calculated Tr0 discussed above. In similar fashion Tdiffn is calculated by the controller till nth pulse.
[0082] The controller 404 is further configured to determine current segment in which
the window is running. In particular, the current segment is determined after an obstruction is sensed by the controller 404 while the power window moves in an upward direction. In an exemplary embodiment, the segments in which the window is divided are imaginary segments created by the controller 404. These segments are calculated by the controller 404 by dividing the total number of pulse counted by the free interval timer (not shown), at the moment obstruction is sensed, by X number of pulse, wherein the X denotes the number of pulses in each segment. In particular, the number of pulses in a segment may be varied from 16-64. However, the present disclosure explains the invention by considering 32 pulses in a segment. In other words, to fix the number of segments, the total number of pulses in the whole run distance of the window is divided into ‘n’ segments, wherein each segment can consist up to ‘x’ pulses count.
[0083] Further, the controller 404 determines current threshold for the current segment.
In particular, the current threshold value is determined by the controller 404 based on the accumulated average resultant pulses of last two segments. Specifically, to calculate the current
25
threshold of the current segment, the controller takes the sum of accumulated resultant pulses of previous two sections and divided the same by 2. In an example, when an obstruction is sensed the current segment is calculated by the controller 404. For example, when an obstruction is sensed, if the total number of counts of the free interval counter/timer (not shown), placed inside the controller 404, is suppose say 640 then the controller divides the same by 32 pulses giving a resultant 20 i.e. detecting that the window is currently in 20th segment. Once, it is determined that the window is in 20th segment, to calculate the current threshold, the controller 404 accumulates resultant pulses of last two segments, i.e. 18th and 19th segments, and divided the same by 2 to find the current threshold. It is to be noted that the free interval timer, of the controller 404, is the counter that updated its count every pulse edge detection and which starts from 0th position viz. window min position. In another exemplary embodiment, it may be noted that if the accumulated average resultant pulses of previous two segments is not available then the controller 404 considers the average of last 32 accumulated resultant pulses as the current threshold value. In particular, if the window is in a segment below 3rd segment then the controller 404 considers average of last 32 accumulated resultant pulses as the current threshold value.
[0084] Once the controller 404 has determined the current threshold, the controller 404
calculates a first threshold from the current threshold. The controller 404 calculates the first threshold to check the condition for soft pinch, while the power window is moving in the upward direction. In case the controller 404 finds the primary condition for the soft pinch satisfied the controller moves towards confirmation of soft pinch. In an exemplary embodiment, the first threshold comprises a first upper threshold value (Xthu1) and a first lower threshold value (Xthl1). The first lower threshold value (Xthl1) is determined by the controller 404 by calculating 90% of the current threshold value and the upper threshold value (Xthu1) is determined by the controller 404 by calculating 110% of the current threshold value. In a specific embodiment:
Xthl1 =90% of the current threshold; and "1
I (2)
Xthu1 = 110% of the current threshold J
26
Now for determining soft pinch the controller 404, calculates the average of x accumulated resultant pulses using:
(Tdiff1+Tdiff2+Tdiff3+………………………………………+Tdiffx)/ x …. (3)
Wherein, in the present scenario x is considered to be 32. Thus, the controller 404 checks whether the average of last 32 accumulated resultant pulses lies between the first lower threshold (Xthl1) and the first upper threshold (Xthu1), if the condition is found true then the controller 404 confirms that the primary condition of soft pinch is satisfied. Once, the primary soft pinch condition is satisfied, the controller 404 calculates a second threshold value to confirm the soft pinch. The second threshold also includes a second upper threshold value (Xthu2) and a second lower threshold value (Xthl2). The second upper threshold value (Xthu2) is determined by the controller 404 by calculating 120% of the first upper threshold (Xthu1) value and the second lower threshold value (Xthl2) is considered by the controller 404 same as first upper threshold value (Xthu1). In another specific embodiment:
Xthl2 = Xthu1; and ~j
r (4)
Xthu2 = 120% of Xthu1 J
[0085] The controller 404 then adds the second upper threshold value (Xthu2) and the
second lower threshold value (Xthl1) to Time Pulse counter of ‘A’ and to Time Pulse counter of ‘B’ to calculate:
time pulse counter of pulse A approx. lower threshold value = "time pulse counter value of pulse A + Xthl2;
time Pulse counter of Pulse B approx. lower threshold value =
(5)
time Pulse counter value of Pulse ‘B’ + Xthl2;
time Pulse counter of Pulse A approx. upper threshold value =
time Pulse counter value of Pulse ‘A’ + Xthu2 + Max Jerk; and
time pulse counter of pulse B approx. upper threshold value =
time Pulse counter value of Pulse ‘B’ + Xthu2+ Max Jerk
[0086] For the calculation of Max Jerk the controller 404 uses the Time difference as
27
explained in (1) and (3), i.e.
if (Tdiff1 > Tdiff2), then, Max Jerk [0] = Tdiff1- Tdiff2; and if (Tdiff2 > Tdiff3), then, Max Jerk [1] = Tdiff2- Tdiff3 and so on. Now, if (Max Jerk [0] > Max Jerk [1]), then, Max Jerk= Max Jerk [0]; else if (Max Jerk [0] < Max Jerk [1]), then, Max Jerk= Max Jerk [1].
">
(6)
J
[0087] To confirm soft pinch, the controller 404 checks time pulse counter value against
the time pulse counter approx. lower threshold value and the time pulse counter approx. upper threshold value. In a specific embodiment, for confirming soft pinch the controller 404 relies on following conditions:
time pulse counter value > time pulse counter of pulse A approx. lower threshold value and < the time pulse counter of pulse A approx. upper threshold value; or
time pulse counter value > the time pulse counter of pulse B approx. lower threshold value and < time pulse counter of pulse B approx. upper threshold value.
J
> (7)
[0088] The controller 404 confirms soft pinch only after confirming the above condition
being satisfied “i” number of times. In particular, if the above condition is satisfied then, the controller 404 waits for a pre-determined amount of time and the same condition is repeated “i” number of times, wherein the “i” may vary from 1 to 255. If the soft pinch is confirmed “i” number of times, then the controller 404 commands the motor 406 to move in reverse direction so as to move the power window in the downward direction. If the same is not satisfied, then the controller 404 moves to next step. In another embodiment, if the controller 404 finds the above condition true for the first time but does not find the condition repeating itself in the given period of time, then the controller 404 does not consider it as soft pinch and moves to next step.
[0089] The controller 404 is further configured to calculate average accumulated
threshold value to detect hard pinch. In an exemplary embodiment, average accumulated
28
threshold value is equal to average accumulated resultant pulse + (average accumulated resultant pulse x division factor)/100]. In another exemplary embodiment, average voltage w.r.t reference voltage is calculated by the controller using:
(Present Battery voltage - Reference voltage)/100, and Division Factor is calculated using: Division Factor = {KTD factor - Average voltage w.r.t reference voltage*h}/10, where “h” is variable which is voltage dependent and KTD factor = constant, taken as 1000. Thus, in an exemplary embodiment, if the battery voltage is assumed to be 12000mV and Reference voltage is assumed to be 7000mV and KTD Factor = 1000 and h = Battery voltage/1000, then h = 12000/1000, which gives h= 12. Therefore, Average voltage w.r.t reference voltage comes out to be (12000-7000)/100 = 50 and Division Factor comes out to be {1000 - (50*12)}/10 = 40.
[0090] It must be noted that if the controller 404 does not find the condition of soft pinch
as discussed above satisfied, then the controller 404 moves to check for the hard pinch. In particular embodiment, if the controller 404 does not find the average accumulated resultant pulse lying between the first lower threshold value (Xthl1) and first upper threshold value (Xthu1) the controller 404 clears the flag of soft pinch and checks whether it is a condition of hard pinch. In the event of detection of hard pinch, the controller 404 adds the average accumulated threshold value to time pulse counter to calculate:
time pulse counter of pulse A initial threshold value = time pulse counter
value of pulse A + average accumulated threshold value;
> (8) time pulse counter of pulse B initial threshold value = time pulse counter
value of pulse B + average accumulated threshold value.
J
Here, a pulse auto increment timer (not shown) is taken which updates its current count every lOOus. Initially, pulse auto increment timer count = 0; for (time >= 100us) {
Time pulse counter ++;
Time = 0; }
29
[0091] Now, if the controller 404 finds that the (Time pulse counter > Time Pulse
counter of Pulse ‘A’ Initial Th) and (Time pulse counter > Time Pulse counter of Pulse ‘B’ Initial Th), then, the controller 404 calculates a new threshold range for hard pinch detection. In an embodiment, if the time pulse counter value is greater than the time pulse counter of pulse A initial threshold value and time pulse counter of pulse B initial threshold value, as discussed above, the third threshold value is calculated by the controller 404. In another embodiment, the third threshold includes a third lower threshold value (Xthl3) and a third upper threshold value (Xthu3). The third lower threshold (Xthl3) is determined by controller 404 by calculating 105% of the threshold of last segment, wherein threshold of last segment is equal to time period average of 32 pulses in the last segment/32. The third upper threshold (Xthu3) is determined by the controller by calculating 125% of the average accumulated resultant pulses. The controller 404 further adds the third lower threshold value and the third upper threshold value to time pulse counter value to calculate:
A
time pulse counter of pulse A approx. lower threshold value =
time pulse counter value of pulse A + Xthl3;
time pulse counter of pulse B approx. lower threshold value =
y (9)
time pulse counter value of pulse B + Xthl3;
time Pulse counter of pulse A approx. upper threshold value =
time pulse counter value of pulse A + Xthu3+ Max Jerk; and
time pulse counter of pulse B approx. upper threshold value =
J
time pulse counter value of pulse B + Xthu3+ Max Jerk
Now to confirm hard pinch, the controller 404 compares the time pulse counter value to the time pulse counter approx. lower threshold value and the time pulse counter approx. upper threshold value. In particular, if:
30
time pulse counter value > time pulse counter of pulse A approx. lower threshold value and < the time pulse counter of pulse A approx. upper threshold value; or
time pulse counter value > the time pulse counter of pulse B approx. lower threshold value and < time pulse counter of pulse B approx. upper threshold value
( (10)
If the above condition is satisfied “i” number of times, then the controller 404 confirms the hard pinch else not. In particular embodiment, if the controller 404 finds the above condition true, then the controller 404 waits for a pre-determined period of time and if the same condition repeats ‘i’ no of times, then Hard pinch is confirmed, where ‘i’ can be varied from a range of 1 to 255. However, if the controller 404 finds the above condition to be true for the first time, but the same is not repeated in the given period of time, then the controller 404 clears the hard-pinch flag.
[0092] Thus based on the first, second and third threshold values, the controller 404
differentiates between the soft pinch and the hard-pinch. In an exemplary embodiment, if the condition of hard pinch is detected, then the controller continues moving the power window in the upward direction, using the motor 406. However, if the condition of soft pinch is detected, then the movement of power window is revered by controlling the movement of motor 406, by the controller 404. In a particular embodiment, soft pinch relates to conditions where for example, child’s finger, driver/co-passengers hand or neck is accidently stuck in the window. On the other hand, the hard pinch relates to conditions where for example, someone tries to forcibly pull the window down i.e. in case of theft etc.
[0093] Those of skill in the art will further appreciate that the various illustrative logical
blocks, modules, circuits, and equations described in connection with the aspects disclosed herein may be implemented as electronic hardware, instructions stored in memory or in another computer readable medium and executed by a processor, controller, micro-processor or other processing device, or combinations of both. The system described herein may be employed in
31
any circuit, hardware component, IC, or IC chip, as examples. Memory disclosed herein may be any type and size of memory and may be configured to store any type of information desired. To clearly illustrate this interchangeability, various illustrative components, blocks, modules, circuits, and steps have been described above generally in terms of their functionality. How such functionality is implemented depends upon the particular application, design choices, and/or design constraints imposed on the overall system. Skilled artisans may implement the described functionality in varying ways for each particular application, but such implementation decisions should not be interpreted as causing a departure from the scope of the present disclosure.
[0094] Further, the various illustrative logical blocks, modules, and circuits described in
connection with the aspects disclosed herein may be implemented or performed with a controller, processor, a DSP, an Application Specific Integrated Circuit (ASIC), a Field Programmable Gate Array (FPGA) or other programmable logic device, discrete gate or transistor logic, discrete hardware components, or any combination thereof designed to perform the functions described herein. In addition, a controller, processor, a DSP, an Application Specific Integrated Circuit (ASIC), a Field Programmable Gate Array (FPGA) or other programmable logic device discussed may be placed inside the ECU of the vehicle or outside the ECU of the vehicle. Further, the components disclosed in the system of the present invention are intended to cover one aspect of the invention. However, the system may include other hardware limitations such as battery circuit for measurement, LDO power supply, ignition detection logic, relay driver section, memory etc. and the same shall not be construed in a narrow sense.
[0095] Figure 5 illustrates perspective view of a vehicle window being operated using the
teachings of present invention, satisfying safety standards MVSS118. System of figure 4 uses a DC motor 406 for window up-lift mechanism and two Hall-effect sensors 408 and 410 being mounted at the end of the motor shaft (not shown). The angular velocity of the motor shaft is calculated using the pulses provided by the Hall-sensor 408 and 410. In particular, a controller 404 continuously monitors the current position of the window by counting the number of pulses received by the motor 406 and based on the number of counts the controller 404 takes the decision whether the window is moving up or down or there is obstacle in the path of window or there is jerk in the path while the window is moving up/ down. Based on the counts, the
32
controller 404 takes the decision as whether to stop the supply to the motor 406 or to send the command to motor 406 to move the window in downward direction.
[0096] Although the present invention has been described in considerable detail with
reference to figures and certain preferred embodiments thereof, other versions are possible. Therefore, the spirit and scope of the present invention should not be limited to the description of the preferred versions contained herein.
We claim:
1. A method for differentiating between soft pinch and hard pinch considering real time
jerk, while operating a power window of a vehicle, the method comprising:
initializing a plurality of buffers and a plurality of counters after receiving a signal for
moving the power window in an upward direction;
receiving a plurality of A pulses and a plurality of B pulses, wherein said plurality of A
pulses being originated from a hall sensor A and said plurality of B pulses being
originated from a hall sensor B;
accumulating said plurality of A pulses and said plurality B pulses to obtain a plurality of
average resultant pulses;
determining current segment after an obstruction is sensed while the power window
moves in an upward direction;
calculating current threshold value for said current segment;
calculating a first threshold value from the current threshold value for detecting the soft
pinch condition and if the condition for soft pinch is satisfied, calculating a second
threshold value for conforming the soft pinch condition;
calculating a third threshold value for detecting the hard-pinch condition, if the soft pinch
condition is not satisfied; and
differentiating between the soft pinch and the hard-pinch using the above threshold
values; and
continuing the movement of the power window in the upward direction when hard-pinch
is detected or reversing the movement of the power window when soft pinch is detected,
wherein said differentiation is performed considering real-time jerk conditions.
2. The method as claimed in claim 1, wherein obtaining said plurality of average resultant
pulses comprises:
averaging the plurality of A pulses and B pulses received at different time instances based on:
Trn= (Tan+Tbn)/2; and calculating time difference based on:
Tdrffn=(Trn-Tr(n-l)).
3. The method as claimed in claim 1, wherein current segment is determined by:
total number of pulses counted by a free interval counter/X, where X is number of pulses in each segment.
4. The method as claimed in claim 3, wherein X varies between 16 to 64 pulses.
5. The method as claimed in claim 4, wherein X=32 pulses.
6. The method as claimed in claim 1, wherein calculating the current threshold value comprises determining the sum of accumulated resultant pulses of previous two segments/2.
7. The method as claimed in claim 6, wherein if the accumulated average resultant pulses of previous two segments is not available then average of last 32 accumulated resultant pulses is considered as the current threshold value.
8. The method as claimed in claim 1, wherein the first threshold value includes a first lower threshold value and a first upper threshold value, wherein the first lower threshold value (Xthll) is calculated as 90% of the current threshold value and the first upper threshold value (Xthul) is calculated as 110% of the current threshold value.
9. The method as claimed in claims 1 and 8, wherein if the average of last 32 accumulated resultant pulses lies between the first lower threshold value (Xthll) and the first upper threshold value (Xthul) then the condition of soft pinch is satisfied; and
the method further comprises confirming the condition for soft pinch after the condition for soft pinch is satisfied.
10. The method as claimed in claims 1 and 9, further comprises calculating the second
threshold value, wherein calculating the second threshold comprises calculating a second
upper threshold value (Xthu2) which is 120% of first upper threshold value (Xthul) and a second lower threshold value (Xthl2) is equal to the first upper threshold value (Xthul).
11. The method as claimed in claim 10, wherein the second lower threshold value and the
second upper threshold value is fed to time pulse counter to calculate:
time pulse counter of pulse A approx. lower threshold value = time pulse counter value of
pulse A + Xthl2;
time Pulse counter of Pulse B approx. lower threshold value = time Pulse counter value
ofPulse'B'+Xthl2;
time Pulse counter of Pulse A approx. upper threshold value = time Pulse counter value
of Pulse 'A' + Xthu2 + Max Jerk; and
time pulse counter of pulse B approx. upper threshold value = time Pulse counter value of
Pulse 'B' + Xthu2+ Max Jerk.
12. The method as claimed in claims 1 and 11, wherein the soft pinch is confirmed if:
time pulse counter value is greater than time pulse counter of pulse A approx. lower
threshold value and lesser than the time pulse counter of pulse A approx. upper threshold
value; or
time pulse counter value is greater than the time pulse counter of pulse B approx. lower
threshold value and lesser than time pulse counter of pulse B approx. upper threshold
value.
13. The method as claimed in claim 1, further comprises calculating average accumulated
threshold value for detecting hard pinch based on:
average accumulated threshold value= [average accumulated resultant pulse + (average
accumulated resultant pulse x division factor)/100],
wherein the division factor = {KTD factor - Average voltage w.r.t reference
voltage*h}/10.
14. The method as claimed in claim 13, wherein the average accumulated threshold value is
added to time pulse counter to calculate:
time pulse counter of pulse A initial threshold value = time pulse counter value of pulse A + average accumulated threshold value;
time pulse counter of pulse B initial threshold value = time pulse counter value of pulse B + average accumulated threshold value.
15. The method as claimed in claim 14, wherein if the time pulse counter value is greater than the time pulse counter of pulse A initial threshold value and time pulse counter of pulse B initial threshold value, the third threshold value is calculated.
16. The method as claimed in claim 15, wherein the third threshold value includes a third lower threshold value (Xthl3) which is calculated as 105% of the threshold of last segment and a third upper threshold value (Xthu3) which is 125% of the average accumulated resultant pulse.
17. The method as claimed in claim 16, wherein the third lower threshold value and the third upper threshold value is added to time pulse counter value to calculate:
time pulse counter of pulse A approx. lower threshold value = time pulse counter value of
pulseA + Xthl3;
time pulse counter of pulse B approx. lower threshold value = time pulse counter value of
pulse B + Xthl3;
time Pulse counter of pulse A approx. upper threshold value = time pulse counter value of
pulse A + Xthu3+ Max Jerk; and
time pulse counter of pulse B approx. upper threshold value = time pulse counter value of
pulse B + Xthu3+ Max Jerk.
18. The method as claimed in claims 1 and 17, wherein the hard pinch is confirmed if:
time pulse counter value is greater than time pulse counter of pulse A approx. lower threshold value and lesser than the time pulse counter of pulse A approx. upper threshold value; or
time pulse counter value is greater than the time pulse counter of pulse B approx. lower threshold value and lesser than time pulse counter of pulse B approx. upper threshold value.
19. A system for differentiating between a soft pinch and a hard pinch considering real-time jerk, while operating a power window of a vehicle, said system comprising: a power window switch;
a motor operatively connected to the power window switch, wherein the motor is configured to move the window up and down in response to signals received from the power window switch; and
a controller connected to the power window switch and the motor, wherein said controller is configured to:
initialize a plurality of buffers and a plurality counters after receiving a signal from the switch for moving the power window in an upward direction;
receive a plurality of A pulses and a plurality of B pulses originated from a hall sensor A and a hall sensor B, affixed 180° apart from each other at shaft of the motor, wherein the hall pulses A and B are received in response to the auto-up signal sent from the controller;
accumulate said plurality of A pulses and said plurality B pulses to obtain a plurality of average resultant pulses;
determine current segment after an obstruction is sensed while the power window moves in an upward direction;
calculate current threshold value for said segment;
calculate a first threshold value from the current threshold value for detecting the soft pinch condition and if the condition for soft pinch is satisfied, calculate a second threshold value for conforming the soft pinch condition;
calculate a third threshold value for detecting the hard-pinch condition, if the soft pinch condition is not satisfied; and
differentiate between the soft pinch and the hard-pinch using the above threshold values; and
control the motor to continue the movement of the power window in the upward direction when hard-pinch is detected or reversing the movement of the power window when soft pinch is detected, wherein said differentiation is performed considering real-time jerk conditions.
20. The system as claimed in claim 19, wherein the controller is configured to obtain said
plurality of average resultant pulses by:
averaging the plurality of A pulses and B pulses received at different time instances based on:
Trn= (Tan+Tbn)/2; and calculating time difference based on:
Tdiffh=(Trn-Tr(n-l)).
21. The system as claimed in claim 19, wherein the controller determines the current segment
by:
total number of pulses counted by a free interval counter/X, where X is number of pulses in each segment.
22. The system as claimed in claim 21, wherein X varies between 16 to 64 pulses.
23. The system as claimed in claim 22, wherein X=32 pulses.
24. The system as claimed in claim 19, wherein the controller calculates the current threshold value by determining the sum of accumulated resultant pulses of previous two segments/2.
25. The system as claimed in claim 24, wherein if the accumulated average resultant pulses of previous two segments is not available then the controller is configured to consider average of last 32 accumulated resultant pulses as the current threshold value.
26. The system as claimed in claim 19, wherein the first threshold includes a first lower threshold and a first upper threshold, wherein the controller calculates the first lower threshold value (Xthll) as 90% of the current threshold value and the first upper threshold value (Xthul) as 110% of the current threshold value.
27. The system as claimed in claims 19 and 26, wherein the controller checks if the average of last 32 accumulated resultant pulses lies between the first lower threshold value (Xthll) and the first upper threshold value (Xthul), if yes, the controller raises a flag for soft pinch and proceeds to confirm the soft pinch.
28. The system as claimed in claims 19 and 37, wherein the controller is further configured to calculate the second threshold value, wherein calculating the second threshold value comprises calculating a second upper threshold value (Xthu2) which is 120% of first upper threshold (Xthul) and a second lower threshold (Xthl2) equal to the first upper threshold (Xthul).
29. The system as claimed in claim 28, wherein the controller feeds the second lower threshold value and the second upper threshold value to time pulse counter to calculate: time pulse counter of pulse A approx. lower threshold value = time pulse counter value of pulse A + Xthl2;
time Pulse counter of Pulse B approx. lower threshold value = time Pulse counter value
ofPulse'B'+Xthl2;
time Pulse counter of Pulse A approx. upper threshold value = time Pulse counter value
of Pulse 'A' + Xthu2 + Max Jerk; and
time pulse counter of pulse B approx. upper threshold value = time Pulse counter value of
Pulse 'B' + Xthu2+ Max Jerk.
30. The system as claimed in claims 19 and 29, wherein the controller confirms the soft pinch
if:
time pulse counter value is greater than time pulse counter of pulse A approx. lower
threshold value and lesser than the time pulse counter of pulse A approx. upper threshold
value; or
time pulse counter value is greater than the time pulse counter of pulse B approx. lower
threshold value and lesser than time pulse counter of pulse B approx. upper threshold
value.
31. The system as claimed in claim 19, wherein the controller is further configured to
calculate average accumulated threshold value for detecting hard pinch based on:
average accumulated threshold value= [average accumulated resultant pulse + (average
accumulated resultant pulse x division factor)/100],
wherein the division factor = {KTD factor - Average voltage w.r.t reference voltage*h}/10.
32. The system as claimed in claim 31, wherein the controller is configured to add to time
pulse counter average accumulated threshold value to calculate:
time pulse counter of pulse A initial threshold value = time pulse counter value of pulse A + average accumulated threshold value;
time pulse counter of pulse B initial threshold value = time pulse counter value of pulse B + average accumulated threshold value.
33. The system as claimed in claim 32, wherein the controller checks if the time pulse counter value is greater than the time pulse counter of pulse A initial threshold value and time pulse counter of pulse B initial threshold value, if yes, then the controller calculates the third threshold value.
34. The system as claimed in claim 33, wherein the third threshold value includes a third lower threshold value (Xthl3) calculated by the controller as 105% of the threshold of last segment and a third upper threshold value (Xthu3) calculated by the controller as 125% of the average accumulated resultant pulse.
35. The system as claimed in claim 34, wherein the controller adds to time pulse counter
value, third lower threshold value and the third upper threshold value to calculate:
time pulse counter of pulse A approx. lower threshold value = time pulse counter value of
pulseA + Xthl3;
time pulse counter of pulse B approx. lower threshold value = time pulse counter value of
pulse B + Xthl3;
time Pulse counter of pulse A approx. upper threshold value = time pulse counter value of
pulse A + Xthu3+ Max Jerk; and
time pulse counter of pulse B approx. upper threshold value = time pulse counter value of
pulse B + Xthu3+ Max Jerk.
36. The system as claimed in claims 19 and 35, wherein the controller confirms hard pinch if:
time pulse counter value is greater than time pulse counter of pulse A approx. lower
threshold value and lesser than the time pulse counter of pulse A approx. upper threshold
value; or
time pulse counter value is greater than the time pulse counter of pulse B approx. lower threshold value and lesser than time pulse counter of pulse B approx. upper threshold value.
| # | Name | Date |
|---|---|---|
| 1 | 201711000742-IntimationOfGrant06-03-2024.pdf | 2024-03-06 |
| 1 | Form 5 [07-01-2017(online)].pdf | 2017-01-07 |
| 2 | 201711000742-PatentCertificate06-03-2024.pdf | 2024-03-06 |
| 2 | Form 3 [07-01-2017(online)].pdf | 2017-01-07 |
| 3 | Drawing [07-01-2017(online)].pdf | 2017-01-07 |
| 3 | 201711000742-ABSTRACT [21-06-2022(online)].pdf | 2022-06-21 |
| 4 | Description(Provisional) [07-01-2017(online)].pdf | 2017-01-07 |
| 4 | 201711000742-CLAIMS [21-06-2022(online)].pdf | 2022-06-21 |
| 5 | abstract.jpg | 2017-02-01 |
| 5 | 201711000742-FER_SER_REPLY [21-06-2022(online)].pdf | 2022-06-21 |
| 6 | 201711000742-OTHERS [21-06-2022(online)].pdf | 2022-06-21 |
| 6 | 201711000742-APPLICATIONFORPOSTDATING [04-01-2018(online)].pdf | 2018-01-04 |
| 7 | 201711000742-FER.pdf | 2022-02-01 |
| 7 | 201711000742-APPLICATIONFORPOSTDATING [16-02-2018(online)].pdf | 2018-02-16 |
| 8 | 201711000742-FORM 18 [10-03-2021(online)].pdf | 2021-03-10 |
| 8 | 201711000742-DRAWING [29-03-2018(online)].pdf | 2018-03-29 |
| 9 | 201711000742-Correspondence-220518.pdf | 2018-05-25 |
| 9 | 201711000742-CORRESPONDENCE-OTHERS [29-03-2018(online)].pdf | 2018-03-29 |
| 10 | 201711000742-COMPLETE SPECIFICATION [29-03-2018(online)].pdf | 2018-03-29 |
| 10 | 201711000742-OTHERS-220518.pdf | 2018-05-25 |
| 11 | 201711000742-FORM-26 [03-04-2018(online)].pdf | 2018-04-03 |
| 11 | 201711000742-Proof of Right (MANDATORY) [21-05-2018(online)].pdf | 2018-05-21 |
| 12 | 201711000742-Proof of Right (MANDATORY) [21-05-2018(online)].pdf | 2018-05-21 |
| 13 | 201711000742-COMPLETE SPECIFICATION [29-03-2018(online)].pdf | 2018-03-29 |
| 13 | 201711000742-OTHERS-220518.pdf | 2018-05-25 |
| 14 | 201711000742-Correspondence-220518.pdf | 2018-05-25 |
| 14 | 201711000742-CORRESPONDENCE-OTHERS [29-03-2018(online)].pdf | 2018-03-29 |
| 15 | 201711000742-DRAWING [29-03-2018(online)].pdf | 2018-03-29 |
| 15 | 201711000742-FORM 18 [10-03-2021(online)].pdf | 2021-03-10 |
| 16 | 201711000742-APPLICATIONFORPOSTDATING [16-02-2018(online)].pdf | 2018-02-16 |
| 16 | 201711000742-FER.pdf | 2022-02-01 |
| 17 | 201711000742-APPLICATIONFORPOSTDATING [04-01-2018(online)].pdf | 2018-01-04 |
| 17 | 201711000742-OTHERS [21-06-2022(online)].pdf | 2022-06-21 |
| 18 | 201711000742-FER_SER_REPLY [21-06-2022(online)].pdf | 2022-06-21 |
| 18 | abstract.jpg | 2017-02-01 |
| 19 | Description(Provisional) [07-01-2017(online)].pdf | 2017-01-07 |
| 19 | 201711000742-CLAIMS [21-06-2022(online)].pdf | 2022-06-21 |
| 20 | 201711000742-ABSTRACT [21-06-2022(online)].pdf | 2022-06-21 |
| 21 | 201711000742-PatentCertificate06-03-2024.pdf | 2024-03-06 |
| 22 | 201711000742-IntimationOfGrant06-03-2024.pdf | 2024-03-06 |
| 1 | SearchHistory(17)-convertedE_24-01-2022.pdf |