Anti-pinch method for an apparatus for automatic movement of sliding windows in a motor vehicle, in particular a power-window apparatus, and corresponding device
11655661 · 2023-05-23
Assignee
Inventors
- Alessio Pellegrinetti (Turin, IT)
- Andrea Novello (Turin, IT)
- Andrea Bussi (Turin, IT)
- Carlo Vai (Turin, IT)
- Carlo Gallo (Turin, IT)
Cpc classification
E05F15/41
FIXED CONSTRUCTIONS
H02H7/0851
ELECTRICITY
International classification
H02P27/05
ELECTRICITY
E05F15/41
FIXED CONSTRUCTIONS
H02P7/00
ELECTRICITY
Abstract
An anti-pinch method for an apparatus for automatic movement of sliding windows including the steps of: receiving at least one electrical quantity (e.sub.a, i.sub.a) of the motor (M); counting (R.sub.c) oscillation periods (R.sub.d) of the at least one electrical quantity (e.sub.a, i.sub.a); calculating an angular position (θ(t)) of the motor (M) as a function of the number of periods (R.sub.c) of the electrical quantity (e.sub.a, i.sub.a); calculating a position of the window (F) as a function of said angular position (θ(t)) of the motor (M); and reversing the direction of rotation of the motor (M) if the position of the window (F) falls within an anti-pinch zone (APZ) and the movement of the motor (M) is at least partially blocked.
Claims
1. An anti-pinch method for an apparatus for automatic movement of sliding windows in a motor vehicle, comprising a d.c. electric motor (M) having operating steps (STOP, RUN UP, RUN DOWN) wherein the motor (M) moves a window (F) so that it slides along guides, said method comprising the steps of: receiving at least one electrical quantity (e.sub.a, i.sub.a) of said motor (M); counting a number (R.sub.c) oscillation periods (R.sub.d) of said at least one electrical quantity (e.sub.a, i.sub.a); calculating an angular position ((θ(t)) of the motor (M) as a function of said number of oscillation periods (R.sub.c) of the electrical quantity (e.sub.a, i.sub.a); calculating a position of the window (F) as a function of said angular position ((θ(t)) of the motor (M); and reversing the direction of rotation of the motor (M) if the position of said window (F) falls within an anti-pinch zone (APZ) and the movement of the motor (M) is at least partially blocked, receiving a plurality of electrical quantities (e.sub.a, i.sub.a) of said motor (M); and selecting the electrical quantity in order to count said number (R.sub.c) of oscillation periods (R.sub.d) of said electrical quantity in said plurality of electrical quantities (e.sub.a, i.sub.a) received through a control signal (mode), generated as a function of the operating steps (STOP, RUN UP, RUN DOWN) of the motor (M) comprising a state of arrest (STOP) in which the window (F) is wound up by the motor (M) and in which the window (F) is wound down by the motor (M), said electrical quantity being selected between an armature current (i.sub.a) and a back electromotive force (e.sub.a) of the motor (M), said back electromotive force (e.sub.a) of the motor (M) being selected during said state of arrest (STOP) of the motor (M).
2. The method as set forth in claim 1, comprising counting (R.sub.c) half-periods of oscillation (R.sub.d) of said at least one electrical quantity (e.sub.a, i.sub.a).
3. The method as set forth in claim 1, further comprising the steps of: determining a frequency (F.sub.r) of the ripple pulses (R.sub.d); and filtering with an adaptive filter with cutoff frequency (F.sub.r), which is, in particular, a function of a frequency (F.sub.r) of the ripple pulses (R.sub.d), the electrical quantities (e.sub.a, i.sub.a) in order to suppress the low-frequency harmonic components.
4. The method as set forth in claim 1, comprising converting said analog electrical quantities at input into digital electrical quantities.
5. An anti-pinch circuit device for controlling an apparatus for automatic movement of sliding windows in a motor vehicle, comprising a d.c. electric motor (M) that moves a window (F) so that it slides along guides, said device acting to drive said motor (M), wherein said device implements the steps of the method according to claim 1.
6. The device as set forth in claim 5, wherein said anti-pinch circuit device comprises an H-bridge for driving said motor (M) and a module for measuring the current (I) of the electric motor (M) on a shunt path connected to said H-bridge, as well as respective modules for measuring the back electromotive force (EMF.sub.UP) of the motor (M) during sliding upwards or towards the closing end-of-travel position (CFu) and the back electromotive force (EMF.sub.DOWN) of the motor (M) during sliding downwards or towards the opening end-of-travel position (CFd) of the window (F).
7. The device as set forth in claim 6, wherein said H-bridge comprises a first branch and a second branch, which are associated to respective terminals (A, B) of the motor (M), comprising respective low-side switches (LS1, LS2) and high-side switches (HS1, HS2), in particular MOSFETs, in which the current paths through said low-side switches (LS1, LS2) of the H-bridge are coupled together, and set between them is a single shunt such as shunt path between the connection to ground (G) and said current paths.
Description
BRIEF DESCRIPTION OF THE DRAWINGS
(1) Other advantages of the invention will be readily appreciated as the same becomes better understood by reference to the following detailed description when considered in connection with the accompanying drawings, wherein:
(2)
(3)
(4)
(5)
(6)
(7)
(8)
(9)
(10)
(11)
(12)
(13)
DETAILED DESCRIPTION OF THE INVENTION
(14) In brief, the solution according to the invention in general envisages exploitation, in the power-window apparatus, of the electrical quantities of the d.c. motor, in particular the back electromotive force and the armature current from the motor, to extract information on the position of the rotor of the motor, and reversing, on the basis thereof, the direction of rotation of the motor in the case where the movement of the motor is blocked.
(15) In order to drive a motor M it is envisaged to resort, for example, to the PWM (Pulse Width Modulation) mode. The PWM mode of supply of a d.c. motor is in itself known to the person skilled in the sector, and for the electric motor M envisages, given a total period t.sub.tot=t.sub.1+t.sub.2, applying to the terminals A, B of the motor M a voltage v=v.sub.a for a period equal to a first ON time t.sub.1 and applying a zero voltage, v=0, for a subsequent OFF period t.sub.2.
(16) By controlling the values of the ON time t.sub.1 and OFF time t.sub.2, rotation of the motor M can be kept constant since, during the period when a voltage is not applied to its terminals, the motor M tends to continue its motion on account of the inertia of the system.
(17) The electric motor M is a d.c. electric motor controlled by an electronic circuit that is equipped with microcontroller and implements a specific software strategy, which enables and controls sliding, in two directions, of a window surface (glass or similar material) constrained in its path by two parallel guides. Sliding in two directions is controlled by the pressure exerted on electromechanical pushbuttons. The above surface may be the glass of a window moved by the power-window system located in the door of a motor vehicle with anti-pinch function or else the sun roof that can be electrically slid open and closed.
(18) Illustrated in
(19) The block designated by CU is a control unit, having the function of: acquiring signals of request for movement of the motor M for closing the window F, i.e., for sliding it up, up, and for opening the window F, i.e., for sliding it down, dw; driving the motor M through an armature voltage v.sub.a applied to the terminals A and B across the motor M, according to the value of the movement-request signals up, dw, generated by the request for movement of the motor made by a user; and controlling an operation of selection of electrical quantities between an armature current i.sub.a and a back electromotive force e.sub.a, and controlling a ripple-counter unit RCU via the operating-mode signal mode and the signal of direction of movement of the motor dir, which are generated by the control unit CU.
(20) In one or more embodiments, the ripple-counter unit RCU receives at input, from the control unit CU, the electrical quantities, namely, the armature current i.sub.a and the back electromotive force e.sub.a, which is acquired at the same terminals A, B as those to which the armature voltage v.sub.a is applied, as well as the operating-mode signal mode and direction-of-movement signal dir. The control unit RCU, on the basis of these quantities and input signals, produces, at output, a signal R.sub.c that represents a number used for calculating the angular position of the motor, proportional to the number of oscillations of an electrical quantity.
(21)
(22) The operation may start, for example, from a state STOP. In this state, the signal mode has the value MV (i.e., the back electromotive force in the calculation of the period of the oscillations is selected), whereas the value of the signal dir is not changed.
(23) The state machine exits from the state STOP if the signals assume the following values: up=1 AND dw=0: in this case, the machine enters a state RUN UP where the window is wound up; and up=0 AND dw=1: in this case, the machine enters a state RUN DOWN where the window is wound down.
(24) The state RUN UP in turn exemplifies the movement of closing of a window that conventionally coincides with a movement upwards. The signals mode and dir, in this state, assume the values MI/current and −1, respectively.
(25) The state machine exits from the state RUN UP if the values up and dw assume the following values: up=0 AND dw=0: in this case, the machine returns to the state STOP; and up=0 AND dw=1: in this case, the machine enters the state RUN DOWN.
(26) Finally, the state RUN DOWN exemplifies the movement of opening of a window that conventionally coincides with a movement downwards. The signals mode and dir, in this state, assume the values MI/current and 1, respectively.
(27) The state machine exits from the state RUN DOWN if the signals up and dw assume the following values: up=0 AND dw=0: in this case, the machine enters the state STOP; and up=1 AND dw=0: in this case, the machine returns to the state RUN UP.
(28) It should be noted that the above values of the signals are perfectly arbitrary and any alternative form of driving can be used, for example, with the movement upwards of the window that occurs when the signal dw is equal to −1 and the signal up is equal to 0. Likewise, the signals mode and dir can change their own value on the basis of the operating state and conventions adopted according to one or more embodiments, for example, in the case where the origin of the system were to be in the point of maximum opening of the window instead of in the point of maximum closing.
(29) The state machine may be implemented in a microprocessor, for example the microprocessor 21 illustrated hereinafter in
(30) A theoretical electromechanical representation of an electric motor M is exemplified in
(31) R.sub.a is an armature resistance of the motor M, L.sub.a is an armature inductance of the motor M, and e.sub.a is a back electromotive force (BEMF) of the electric motor M, which is proportional to an angular velocity of the rotor ωr.
(32) The electric motor M can be represented by the following pair of differential equations:
(33)
(34) where J, K.sub.t, B, and τ.sub.r are, respectively, the moment of inertia of the rotor, the mechanical constant of the motor, the friction of the rotor shaft, and the external torque applied on the rotor.
(35) As may be seen from Eq. (1), the voltage v.sub.a applied is divided into a back electromotive force e.sub.a, a voltage drop due to the armature resistance V.sub.R=R.sub.a.Math.i.sub.a, and a voltage drop due to the armature inductance V.sub.L=L.sub.a.Math.di.sub.a/dt, which are both linked to the windings of the motor M.
(36) The back electromotive force e.sub.a can, in turn, be decomposed into a d.c. (or mean-value) component e.sub.aDC and an a.c. component e.sub.aAC. In the case where the a.c. component is purely sinusoidal, the two components would be described by the following equations:
e.sub.a=e.sub.aDC+e.sub.aAC (3)
e.sub.aDCK.sub.eω.sub.r=ē.sub.a (4)
e.sub.aAC=K.sub.eω.sub.rγ sin(N.sub.pω.sub.rt)=e.sub.a−e.sub.aDC (5)
where K.sub.e is the electric constant of the motor, γ is a coefficient that depends upon the amplitude of the oscillations (ripple) of the electromotive force (emf), N.sub.p is the number of poles of the rotor, and t is time. We thus find that the electromotive force e.sub.a may be proportional to the value of the angular velocity of the rotor ω.sub.r, which means that, by applying a voltage across the terminals A, B of the electric motor M, the latter rotates about its axis (fitted about which is a spindle) with a velocity of rotation ω.sub.r of its own that is proportional to the value of the back electromotive force e.sub.a. It should be noted that the ripple is the result of the a.c. component of the back electromotive force e.sub.aAC, the period of oscillation T of which is
(37)
(38) It should moreover be noted that a complete rotation of the rotor corresponds to a number of periods of the a.c. component of the back electromotive force e.sub.aAC equal to N.sub.p; in fact, the theoretical angular position θ when t=N.sub.p.Math.T is
(39)
(40)
(41) The operating principle of the ripple-counter unit RCU is described below.
(42) An analog-to-digital converter (ADC) 100 samples the electrical quantities at input (armature voltage v.sub.a and armature current i.sub.a) and returns them as digital quantities. A switch 102, driven by the signal mode, “chooses” from among the digital electrical quantities at output from the converter 100 an electrical counting quantity RCUin that is used for counting the oscillations of the ripple. The signal mode assumes the value MV, in the case where as electrical counting quantity RCUin the armature voltage v.sub.a is selected, from which the back electromotive force e.sub.a is deduced, and the value I in the case where as electrical counting quantity RCUin the armature current i.sub.a is selected. In one or more embodiments, an adaptive digital filter (Adaptive HP Filter) 104, which receives the electrical counting quantity RCUin, is configured so as to suppress the low-frequency harmonic components of the input quantity, where the cutoff frequency of the filter is controlled linearly by the input signal F.sub.r, calculated by a block 106.
(43) The above block 106 represents a ripple detector, which receives at input the filtered electrical digital counting quantity RCUin at output from the filter 104, which presents an oscillation due to the back electromotive force, selected on the basis of the value of the signal mode, and returns a recognition signal R.sub.d, which notifies an event of recognition of a period of oscillation that has elapsed. The recognition signal R.sub.d assumes the value 1 (R.sub.d=1) in the case where the recognition event occurs, and the value 0 (R.sub.d=0) in the remaining period of time. In practice, the recognition signal R.sub.d presents as a signal with pulses that correspond to the events of recognition of oscillation periods that have elapsed; hence, if the counting signal RCUin presents a continuous oscillation for a lapse of time, the recognition signal R.sub.d presents as a train of pulses separated from one another by the oscillation period (which in turn may vary in time).
(44) The ripple detector 106 may be configured for signalling the presence of half-periods, instead of full periods. Again, in this case, the signal R.sub.d presents a pulse R.sub.d=1 when a half-period occurs and is equal to 0 otherwise. In this way, the total count value will be twice as high, given that the half-period, instead of the period, is considered.
(45) The ripple detector 106 may be implemented by configuring it so as to seek the local (upper or lower) peaks of the electrical counting quantity RCUin, using an adaptive threshold. The ripple detector 106 moreover determines a frequency F.sub.r of the ripple pulses, which controls the cutoff frequency of the filter 104.
(46) The block 108 represents a ripple integrator that adds or subtracts in a pulse-counting variable R.sub.c(t) the values in time of the input recognition signal R.sub.d, supplied at output by the ripple detector 106.
(47) The block 108 computes an addition when the direction signal dir has a value equal to +1 in the case where the window F is coming down (e.g., it is opening), whereas it computes a subtraction when the direction signal dir has a value equal to −1 in the case where the window F is going up (e.g., it is closing). In other words, the integrator block 108 implements the following operation:
R.sub.c(t)=R.sub.ddir+R.sub.c(t)
(48) The value of the angular position θ(t) of the motor can hence be deduced from the equation:
(49)
where N.sub.p is the number of poles of the rotor.
(50) Once the above information has been obtained, the linear position of the window can be calculated easily: the origin of the system is, for example, in the highest point that can be reached, i.e., when the window is closed, and its calculated position will be proportional to the value of the angular position θ(t).
(51)
(52)
(53) The back electromotive force e.sub.a proves useful when the armature current i.sub.a is not available, for example, in some circuit solutions during the off state (STOP) of the motor. In these cases, the anti-pinch circuit device is configured for making selection (block 102) of the back electromotive force e.sub.a instead of the armature current i.sub.a, in particular by implementing a drive of the motor M that makes available for counting the ripple the above back electromotive force (where the mode selected by the control unit CU is MV) in order to estimate the position of the window coupled to the motor M.
(54) The two pulse signals appearing below the oscillating electrical quantities are provided by way of example of a possible time plot of the signal R.sub.d.
(55) Exemplified in
(56) The moment of transition is represented by the moment when the values of the signals up and dw pass to zero, i.e., up=0 and dw=0, a situation that arises when the armature current i.sub.a drops to a zero value, in the case of manual command (issued by a user) or automatic command (in the case where the end-of-travel position is reached) for interruption of the movement of the motor M. In this case, the voltage v.sub.a, and more specifically the back electromotive force e.sub.a, becomes the signal with respect to which, in the pulse-counting variable R.sub.c, the events R.sub.d of period T elapsed are counted. Once again, there may be noted a progressive reduction in frequency of the pulses in R.sub.d once the voltage mode MV is triggered. As has been said, these transitions can be evaluated using a microprocessor that analyses the armature current and voltage.
(57) Described schematically in
(58) In particular, the control signals represented by the reference DS may comprise the driving signals of the motor M, as well as the control signals of the H-bridge circuit 22. These control solutions are known in the art, and any further explanation herein is deemed superfluous.
(59) Acquired across the terminals A and B of said motor M are respective voltage values EMFA and EMFB, which are sent both to a first operational-amplifier conditioning circuit 23, which computes the subtraction EMFA-EMFB, referred to as upward-displacement signal EMF.sub.UP, for a revolution of the motor to move the window F upwards and to a second operational-amplifier conditioning circuit 24, which computes the subtraction EMFB−EMFA, referred to as downward-displacement EMF.sub.DOWN, for a revolution of the motor to move the window F downwards. The signals EMF.sub.UP and EMF.sub.DOWN are supplied to the microprocessor 21, which receives, via a third operational-amplifier conditioning circuit 25, a current value i.sub.a of the motor, measured via a shunt resistance 26 associated to the H-bridge circuit 22, specifically set between the driving H-bridge circuit 22 and ground G. The armature current i.sub.a of the motor M is calculated by the circuit 25 as ratio of the voltage detected by the circuit 25 across the shunt resistance 26 and the value of the shunt resistance 26 itself.
(60) It should be noted that in one or more embodiments, more economically advantageous variants are possible, in which the active operational-amplifier conditioning circuits 23, 24, which implement operations of subtraction and division on the quantities at their inputs by carrying out such operations, are replaced by passive conditioning circuits, which simply carry out RC filtering. According to the method described with reference to
(61) The microprocessor 21 in general incorporates the functional blocks 100, 102, 104, 106, and 108, generating the signal mode on the basis of the values of armature current i.sub.a. This signal mode, according to whether it has the current value MI or the voltage value MV, can determine variations in one or more control signals denoted by DS, as will be described more fully in what follows, with reference to
(62)
(63) As may be noted in
(64) For the references that are the same as those of
(65) The circuit exemplified in
(66) As illustrated in
(67) The other functional blocks of
(68) To understand more fully the advantage afforded by the method according to the invention and by the device that implements it,
(69)
(70) The method envisages a first step 1000 of estimation of the position of the window F on the basis of the value of the pulse-counting variable R.sub.c at output from the ripple-counter unit RCU.
(71) A step 1002 estimates whether the position of the window F falls within an anti-pinch zone, and if so (Y) and movement of the motor is blocked (step 1004, Y), a step 1006 of reversal of rotation of the motor M is carried out, which inevitably leads to a step 1008 of blocking of the motor M; if so (Y) and movement of the motor is not blocked (step 1004, N), in a step 1010 an estimate is made of the force applied against the external obstacle that has caused pinching; if not (N) and movement of the motor is blocked (step 1012, Y), the motor M is brought into a blocking state, step 1008; and if not (N) and movement of the motor is not blocked (step 1010, N), control returns to the step 1000.
(72) The step 1010 of estimation of the force applied leads to a step 1014, where the estimate is compared with a threshold value; and if the estimate does not exceed the threshold value (N, step 1014), then control returns to step 1000; if the estimate exceeds the threshold value (Y, step 1014), then control passes to step 1006.
(73) It should be noted that, in one or more embodiments, the estimation of the force applied is necessary in so far as movement of the motor may be blocked partially, and not total, and this should not, however, be considered for the purposes of reversal; for example, the friction of the window as it goes up on account of wear resulting from use should not be considered (below threshold), whereas the force due to deformation of a deformable object that may have remained jammed during closing of the window F should be considered (above threshold).
(74) From the foregoing description, the solution described and its advantages hence emerge clearly.
(75) One or more embodiments hence present the technical advantage of enabling detection of the position of a window F without the use of sensors, hence a sensorless detection, in any circuit condition.
(76) In particular, since the method is based upon various possible electrical quantities, it enables detection of the position also in circuit situations where the armature current proves inappropriate for the purpose.
(77) A circuit example of such an advantage may be represented by the case described where just one shunt is used, instead of two, for detection of the electrical quantities. This leads to an economic saving and a saving in terms of encumbrance on the printed-circuit board or on the integrated circuit.
(78) A conventional method, only based upon the armature current, would not enable a continuous control of the position in some circuit solutions, as in the case of use of a single shunt, for example, during turning-off of the motor, because the current would be substantially zero in this operating step.
(79) The invention has been described in an illustrative manner. It is to be understood that the terminology which has been used is intended to be in the nature of words of description rather than of limitation. Many modifications and variations of the invention are possible in light of the above teachings. Therefore, within the scope of the appended claims, the invention may be practiced other than as specifically described.