Centrifuge And Control Method Therefor, Computer Program Carrying Out The Method
20200331006 ยท 2020-10-22
Inventors
Cpc classification
B04B9/10
PERFORMING OPERATIONS; TRANSPORTING
B04B1/00
PERFORMING OPERATIONS; TRANSPORTING
H02P3/06
ELECTRICITY
H02P6/153
ELECTRICITY
H02P29/20
ELECTRICITY
H02P1/04
ELECTRICITY
International classification
Abstract
A control method for a centrifuge is performed by a motor drive unit to drive a motor of the centrifuge using pulses from an angle sensor. The method has a start phase, a regulated acceleration phase, a holding phase, a regulated deceleration phase, a regulated gentle deceleration phase, and a position adjustment phase.
Claims
1. A control method for a centrifuge having a motor that is driven by a motor drive unit and a control signal determining a desired motion of the centrifuge supplied by a control unit to the motor drive unit and wherein pulses of an angle sensor coupled to the motor are utilised in the control method, characterised by the following consecutive phases between a starting and a stopping of the centrifuge comprising: performing a starting phase, in which the control signal is determined using a position determined by pulses received from an angle sensor, performing a regulated acceleration phase, in which the control signal is determined using the position and a time difference between the pulses received from the angle sensor, performing a holding phase, in which a pre-determined centrifugation speed is held by determining the control signal using the time difference between the pulses received from the angle sensor, performing a regulated deceleration phase, in which the control signal is determined using the position and the time difference between the pulses received from the angle sensor, performing a regulated gentle deceleration phase, in which the control signal is determined using the position and the time difference between the pulses received from the angle sensor, wherein the time difference is given a lower weight in the regulated gentle deceleration phase than in the regulated deceleration phase, and performing a position adjustment phase, in which the control signal is determined using the position.
2. The method according to claim 1 wherein the control signal is a pulse width modulation signal having a digital value.
3. The method according to claim 2, the performance of the starting phase further comprising: determining the value of the control signal according to the following equations:
If t.sub.i<t.sub.Max then fpwmmot_SP(i)=fpwmmot_SP(i1)
If t.sub.i>t.sub.Max then fpwmmot_SP(i)=fpwmmot_SP(i1)+1 where t.sub.Max is a time elapsing between two pulses associated with a desired maximum rotation in the starting phase, and t.sub.i is a time elapsed between a pulse and a previous pulse.
4. The method according to claim 2, the performance of the regulated acceleration phase further comprising: determining the value of the control signal using: a value of a set-value function determined by the position and the time difference between the pulses according to the following equations:
Pwmmot=fpwmmot_AP (fsetvalue_AP(i), t.sub.i) t.sub.i=t.sub.it.sub.i1 where fpwmmot_AP is a function determining the value of the control signal in the regulated acceleration phase, fsetvalue_AP is the set-value function of the regulated acceleration, t.sub.i is the time elapsed between a pulse and a previous pulse, and i is a sum of pulses detected from motor start up to a current position, wherein in the regulated acceleration phase, the value of the control signal is determined as follows:
5. The method according to claim 2, the performance of the holding phase further comprising: determining the value of the control signal according to the following equation:
Pwmmot=fpwmmot_HP(t.sub.i) where fpwmmot_HP is a function determining the value of the control signal in the holding phase, and t.sub.i is the time elapsed between a pulse and a previous pulse, wherein in the holding phase the value of the control signal is determined as follows:
t.sub.i.sub.
fpwmmot_HP(i)=Hold.sub.amp*t.sub.i.sub.
6. The method according to claim 2, the performance of the regulated deceleration phase further comprising: determining the value of the control signal using a value of a set-value function defined by the position and the time difference between the pulses according to the following equation:
Pwmmot=fpwmmot_DP (fsetvalue_DP(i), t.sub.i) where fpwmmot_DP is a function determining the value of the control signal in the regulated deceleration phase, fsetvalue_DP is the set-value function of the regulated deceleration, i is a sum of pulses detected from motor start up to a current position, and t.sub.i is the time elapsed between a pulse and a previous pulse, wherein in the regulated deceleration phase the value of the control signal is determined as follows:
7. The method according to claim 2, the performance of the regulated gentle deceleration phase further comprising: determining the value of the control signal using a value of a set-value function determined by the position and the time difference between pulses according to the following equations
8. The method according to claim 2, the performance of the position adjustment phase further comprising: determining the value of the control signal according to the following equation
Pwmacmot=fpwmacmot(i) where Pwmacmot is a value of the control signal in the position adjustment phase, fpwmacmot is a function determining the value of the control signal in the position adjustment phase, and i is a sum of pulses detected from motor start up to a current position, wherein in the position adjustment phase the value of the control signal is determined as follows:
fpwmacmot(0)=Pwm.sub.start
fpwmmot(i)=Pwm.sub.decel3i*Setvalue.sub.ampdecel3 where constants in the formulae are the following: Pwm.sub.Start is an initial pwm signal of the position adjustment phase, Pwm.sub.decal3 is a pwm offset of the position adjustment phase, Setvalue.sub.ampdecal3 is an amplification of the position adjustment phase.
9. The method according to claim 1 further comprising: regulating in each phase except the position adjustment phase only one pole of the motor, while the other pole is connected to a negative or to a positive polarity, and regulating in the position adjustment phase both poles of the motor so that an AC signal is supplied to one of the poles and an inverse of the AC signal is supplied to the other pole, and rotation of the motor is determined by a duty cycle of the AC signal.
10. A centrifuge comprising: a motor; a pulse-emitting angle sensor coupled to the motor; a motor drive unit coupled to the motor; and a control unit coupled to the motor drive unit, the control unit generating a control signal that is used by the motor drive unit to drive a motion of the motor, the control unit generating the control signal by using a position determined by pulses received from the angle sensor during a starting phase; using the position and a time difference between the pulses received from the angle sensor during a regulated acceleration phase; using the time difference between the pulses received from the angle sensor to hold the motor at a predetermined centrifugation speed during a holding phase; using the position and the time difference between the pulses received from the angle sensor during a regulated deceleration phase; using the position and the time difference between the pulses received from the angle sensor during a regulated gentle deceleration phase in which the time difference is given a lower weight than the time difference is given in the regulated deceleration phase; and using the position of the motor during a position adjustment phase.
11. (canceled)
12. A non-transitory computer readable storage medium on which instructions of a computer program are stored that when executed by a computer operating a motor in a centrifuge cause the computer to: use a position of the motor determined by pulses received from an angle sensor during a start phase to generate a control signal for the motor; use the position of the motor and a time difference between the pulses received from the angle sensor to generate the control signal for the motor during a regulated acceleration phase; use the time difference between the pulses received from the angle sensor to generate the control signal for the motor to hold a speed of the motor at a predetermined centrifugation speed during a holding phase; use the position of the motor and the time difference between the pulses received from the angle sensor to generate the control signal for the motor during a regulated deceleration phase; use the position of the motor and the time difference between the pulses received from the angle sensor to generate the control signal for the motor during a regulated gentle acceleration phase, wherein the time difference is given a lower weight in the regulated gentle deceleration phase than in the regulated deceleration phase; and use the position of the motor to generate the control signal for the motor during a position adjustment phase.
Description
BRIEF DESCRIPTION OF THE DRAWINGS
[0006] Preferred embodiments of the invention are described below by way of example with reference to the following drawings, where
[0007]
[0008]
[0009]
[0010]
MODES FOR CARRYING OUT THE INVENTION
[0011] In the detailed description of embodiments, the invention will be described primarily for embodiments in which a DC motor is used in the centrifuge. However, the invention is not limited to this embodiment, but in principle the invention can be used for any motor type, for example also in the case of an AC, a BLDC or a stepping motor. Therefore, the phases and considerations of the invention may be applied for these further motor types, but in the case of these motors other types of motor drive units and control signals are required, as known from the prior art and as conceivable for a skilled person. The various phases of the control sequence according to the invention can be implemented with different complexities for the various types of motors. Generally it can be said that in the case of a DC motor, except for the last phase, all the control phases are very simple to implement. In the very last phase, an exact positioning of the motor is to be carried out, which can be executed extremely simply in case of a stepping motor, but in the case of a DC motor, special measures will be necessary as detailed later on. It is to be noted that in the case of the stepping motor, the first phases of the control sequence can be implemented with a relatively higher complexity and difficulty.
[0012] In the embodiment to be described in details, furthermore, the control signal outputted by the controller is a pulse width modulation (PWM) signal and the value of the control signal is a digital value. The latter may be a one byte or even a multibyte digital value; we concluded during our experiments that even a one byte digital value (ranging from 0 to 255) achieves an appropriate precision in most applications. It is a great advantage of the PWM signal that a D/A converter is not required in the system and that in the last control phase the output frequency of the PWM signal falling into a MHz magnitude is suitable for implementing the AC signal to be described later on. Another applicable approach is that the control unit outputs an analogue signal instead of the digital one, for example a signal between 0 V and 5 V, to the motor drive unit. In the latter case, a separate signal switchover solution is to be implemented for the AC signal advantageously applicable in the last phase.
[0013] According to the block diagram shown in
[0014] A zero-point sensor 12 is preferably also coupled to the motor 10, and this sensor functions once in every revolution, and by this the absolute zero point position can be determined. Preferably, this can be used for an appropriate initial positioning of the centrifugation. In the given case, a direction sensor 13 may also be coupled to the motor, and by means of this, the direction of rotation can be determined.
[0015]
[0016] In the following, the phases of the control sequence, i.e. the consecutive phases from a starting to a stopping of the centrifuge as well as an additional initiating phase will be described by formulae. The explanation of constants and values in the formulae and their advisable extreme values are given in Table 1 at the end of the description.
[0017] At the ends of each phase, the centrifuge should be in a specified position, approximately with a specified speed of rotation. Preferably, the duration of each phase is also determined with the number of pulses in the given phase, and switching to the next phase is carried out when reaching the given number of pulses.
[0018] The so-called initiating phase is not necessarily part of the control sequence according to the invention. This phase may be inserted at the beginning of each control sequence, but it is preferably carried out once when the given equipment is switched on, or even from time to time regularly, for determining the appropriate initiating values. The initiation is carried out preferably in a way that the centrifuge does not necessarily holds the object to be centrifuged, for example a cuvette filled up with body fluid. This is because the mass of the latter object is usually negligible compared to the mechanical inertia of the centrifuge. In this way the initiation does not necessitate the filling in and wasting of an object to be centrifuged.
[0019] Initiating Phase (Phase 0)
[0020] In this phase a Pwm value is measured in association with [0021] an initial rotation defined by t.sub.minrot (i.e. with the slowest initial rotation); which will be the value Pwmmin; and [0022] a centrifugation speed determined by t.sub.cent; which will be the value Pwm.sub.ncent.
[0023] The measurement is carried out in a way that the digital value Pwm is increased from 0, and as soon as the following inequalities are met, the actual Pwm value is recorded as the given value.
If t.sub.i<t.sub.minrot then Pwmmin=Pwm
If t.sub.i<t.sub.cent then Pwm.sub.ncent=Pwm
[0024] Starting Phase
[0025] In this phase there is no regulating, because the pulses are received too rarely for this. This phase lasts until X.sub.start pulses; the driving signal of the motor, i.e. the value of the control signal is exclusively calculated from the position. Therefore, in the starting phase, the value of the control signal is determined on the basis of the position defined by the pulses of the angle sensor 11 according to the following equations:
where
[0026] Pwmmot is the value of the control signal,
[0027] i is a sum of pulses (imp) detected from the starting up to an actual position, fpwmmot_SP is a function determining the value of the control signal in the starting phase,
[0028] X.sub.start is a length of the starting phase measured in pulses, and
[0029] Pwmmin is a control signal value associated with an initial rotation.
[0030] The function fpwmmot_SP preferably determines the value of the control signal in a way that starting from the initial value Pwmmin, the value of the control signal is increased (e.g. by 1) upon each pulse until the time difference between the last two pulses drops to below a limit (t.sub.Max):
If t.sub.i<t.sub.Max then fpwmmot_SP(i)=fpwmmot_SP(i1)
If t.sub.it.sub.Max then fpwmmot_SP(i)=fpwmmot_SP(i1)+1
where t.sub.Max is a time elapsing between two pulses associated with the desired maximum rotation in the starting phase.
[0031] The function fpwmmot_SP, just like the other preferred functions to be detailed later, can be a different function as well, which is to be tuned and pre-parameterised preferably by experiments according to the appropriate centrifuge behaviour necessary for the actual application. On the basis of the control sequence and of the control types characterising each phase according to our invention, a person skilled in the art can create these functions on the basis of the discussion above.
Regulated Acceleration Phase
[0032] In this phase, the rotation value of ncent is achieved by a uniform acceleration in a regulated way during the time t.sub.accel. On average, the value of ncent/2 revolutions/min is realized, and this phase lasts X.sub.accel pulses. In the regulated acceleration phase, the value of the control signal is determined on the basis of the value of a set-value function determined by the position, and the time difference between the pulses, according to the following equations:
Pwmmot=fpwmmot_AP(f setvalue_AP(i), t.sub.i)
t.sub.i=t.sub.it.sub.i1
where
[0033] fpwmmot_AP is a function determining the value of the control signal in the regulated acceleration phase,
[0034] fsetvalue_AP is the set-value function of the regulated acceleration, and
[0035] t.sub.i is the time elapsed between an actual pulse and the previous pulse.
[0036] In the regulated acceleration phase, the value of the control signal is preferably determined by the function fpwmmot_AP as follows:
where the constants in the formulae are the following:
[0037] Setvalue.sub.offs is an offset of the regulated acceleration set-value calculation,
[0038] Setvalue.sub.amp is an amplification of the regulated acceleration set-value calculation,
[0039] Setvalue.sub.div1 is a set-value divisor of the regulated acceleration pwm calculation,
[0040] Setvalue.sub.div2 is a set-value divisor of the regulated acceleration pwm calculation,
[0041] X.sub.accelH is a base value of the position of the regulated acceleration pwm calculation,
[0042] X.sub.accelL is a base value of the position of the regulated acceleration pwm calculation,
[0043] Div.sub.accelH is an error signal divisor of the regulated acceleration pwm calculation,
[0044] Div.sub.accelL is an error signal divisor of the regulated acceleration pwm calculation.
[0045] As shown in the formulae above, a simple P (proportional) regulation is sufficient, and the I (integral) and the D (derivative) parts are not needed. This is valid for all the following regulating functions. This result is unexpected and surprising, in view of the fact that in high speed applications like for example in centrifuge controls, the application of the D part which caters for rapid intervention and of the equalising I part is part of an engineer's mindset.
[0046] Holding Phase
[0047] In this phase, the rotation speed ncent is held for the time period t.sub.centhold; the phase lasts X.sub.hold pulses. Therefore, in the holding phase, a predetermined centrifugation speed is held, where the value of control signal is determined on the basis of the time difference between the pulses according to the following equation:
Pwmmot=fpwmmot_HP(t.sub.i)
[0048] where
[0049] fpwmmot_HP is a function determining the value of control signal in the holding phase. In the holding phase the function fpwmmot_HP preferably determines the value of the control signal according to the following equations:
t.sub.i.sub.
fpwmmot_HP(i)=Hold.sub.amp*t.sub.i.sub.
where the constants in the formulae are the following:
[0050] t.sub.hold is a time interval of pulses associated with a stabilised holding centrifugation speed, measured in a processor clock signal,
[0051] Hold.sub.amp is an amplification of an error signal associated with the stabilised holding centrifugation speed,
[0052] Pwm.sub.ncent is a control signal value associated with the stabilised holding centrifugation speed.
[0053] Regulated Deceleration Phase
[0054] In this phase the speed is preferably decreased to the minimum by uniform deceleration. The phase lasts X.sub.decel1 pulses. In the regulated deceleration phase, the value of the control signal is determined on the basis of the value of a set-value function determined by the position and the time difference between pulses, in accordance with the following equation:
Pwmmot=fpwmmot_DP(fsetvalue_DP(i), t.sub.i)
where
[0055] fpwmmot_DP is a function determining the value of the control signal in the regulated deceleration phase, and
[0056] fsetvalue_DP is the set-value function of the regulated deceleration. In the regulated deceleration phase, a function fpwmmot_DP preferably determines the value of the control signal according to the following equations:
where the constants in the formulae are the following:
[0057] X.sub.decel1 is a time of the deceleration phase measured in pulses,
[0058] Setvalue.sub.ampdecel1 is a set-value amplification of the deceleration phase,
[0059] Setvalue.sub.div1l1 is a set-value divisor of the deceleration phase pwm calculation,
[0060] Setvalue.sub.div2l1 is a set-value divisor of the deceleration phase pwm calculation,
[0061] Div.sub.decel1H is an error signal divisor of the deceleration phase pwm calculation,
[0062] Div.sub.decel1L is an error signal divisor of the deceleration phase pwm calculation.
[0063] Regulated Gentle Deceleration Phase
[0064] In this phase, the position and the speed must also be correct to make sure that position regulation functions precisely without jerks. The phase lasts X.sub.decel2 pulses. In this phase, the pulses arrive more rarely, and they cannot be regulated in the same way as in the previous phases. The time difference between the pulses will be taken into consideration with a lower weight. In the regulated gentle deceleration phase, the value of the control signal is thus determined on the basis of a value of a set-value function determined by the position, and the time difference between the pulses, where the time difference is considered with a lower weight in comparison with the regulated deceleration phase, according to the following equations:
where
[0065] fpwmmot_GDP is a function determining the value of the control signal in the regulated gentle deceleration phase,
[0066] fsetvalue_GDP is the set-value function of the regulated gentle deceleration, and
[0067] ti_GDP is the quotient of the time difference between an actual pulse and the previous pulse and a Div.sub.decel2 constant which is higher than one.
[0068] In the regulated gentle deceleration phase, the function fpwmmot_GDP determines the value of the control signal preferably as follows:
where the constants in the formulae are the following:
[0069] Setvalue.sub.ampdecel2 is a set-value multiplier of the gentle deceleration phase,
[0070] Setvalue.sub.offsdecel2 is a set-value offset of the gentle deceleration phase,
[0071] DiV.sub.decel2sv is a set-value pulse divisor of the gentle deceleration phase,
[0072] DiV.sub.decel2pwm is a pwm divisor of the gentle deceleration phase.
[0073] Position Adjustment Phase
[0074] Now the desired stopping position is generally within one turn, preferably within a quarter of a turn. Now the arm is set at a zero position with a minimal jerk. In this phase, there is only position-based control; in the position adjustment phase the value of the control signal is determined on the basis of the position according to the following equation
Pwmacmot=fpwmacmot(i)
where
[0075] Pwmacmot is a value of the control signal in the position adjustment phase, and
[0076] fpwmacmot is a function determining the value of the control signal in the position adjustment phase.
[0077] In the position adjustment phase, the function fpwmacmot determines the value of the control signal preferably as follows:
fpwmacmot(0)=Pwm.sub.Start
fpwmmot(i)=Pwm.sub.decel3i*Setvalue.sub.ampdecel3
where the constants in the formulae are the following:
[0078] Pwm.sub.Start is an initial pwm signal of the position adjustment phase,
[0079] Pwm.sub.decel3 is a pwm offset of the position adjustment phase,
[0080] Setvalue.sub.ampdecel3 is an amplification of the position adjustment phase.
[0081] In all phases except for the position adjustment phase, preferably only one pole of the motor 10 is regulated, while the other pole is connected to a negative or to a positive polarity. In these phases, a rotation in an opposite direction is not required, and therefore only one pole needs to be regulated.
[0082] In the position adjustment phase, preferably both poles of the motor 10 are regulated in a way that inverse AC signals are fed to the two poles, and the rotation of the motor 10 is defined by the duty cycle of the AC signal. In the last phase both poles are thus regulated, and the two poles receive the inverse signals of each other. In this case the motor 10 vibrates very gently, which cannot be sensed due to the inertias, and therefore it will not shake the sample in a centrifuged cuvette for example. However, an adhesive friction is thereby eliminated and hence the motor 10 can be precisely regulated even at low speeds of rotation.
[0083]
[0084] In this phase the imp signal has a sign, i.e. it depends on the direction of rotation. The direction of rotation comes preferably from the direction sensor 13. In the implementation, the function fpwmacmot sets the duty cycle of a constant frequency signal, and said duty cycle may vary between 0 and 100%. According to the discussion above, the motor is idle at 50%, spins clockwise between 0 and 50%, and spins counter-clockwise between 50 and 100%. The values 0% and 100% correspond to a maximum power.
[0085] The invention also relates to a centrifuge, which comprises the motor 10, the pulse-emitting angle sensor 11 coupled to the motor 10, the motor drive unit 15 which drives the motor 10, and the control unit 14 which supplies to the motor drive unit 15 the control signal for determining the desired motion of the centrifuge. The control unit 14 carries out the method discussed above.
[0086] The invention is furthermore a computer program which, when is executed by one or more computers, includes instructions for executing the method described above, and furthermore a storage medium, on which the computer program for executing the centrifuge control method is stored, and the stored data and instructions carry out the method described above when the program is executed by a computer.
[0087] The invention is of course not limited to the preferred embodiments demonstrated by examples in details, but further versions and alternatives are possible within the scope of protection defined by the claims. In the preferred value ranges appearing in Table 1 below, the values of various parameters and constants are to be adjusted to the actual application, to the statics and dynamics of the given centrifuge, and to its desired behaviour, preferably by estimation and/or by experiments.
TABLE-US-00001 TABLE 1 Expressions and constants Minimal Maximal Names value value Description i N/A N/A Absolute motor position in angle sensor pulses t.sub.i N/A N/A Time difference between two angle sensor pulses Pwm N/A N/A Pwm signal fed to the motor drive unit Pwmmot N/A N/A Pwm signal (control signal value) to be fed to the motor drive unit fpwmmot N/A N/A Calculating function of the pwm signal fsetvalue N/A N/A Calculating function of the regulating set-value t.sub.ierror N/A N/A Deviation time difference of two angle sensor pulses, from the ideal ncent 500 rpm 10000 rpm Stabilised centrifuge rotational speed t.sub.minrot 80 ms 1 ms Time difference of sensor pulses at the lowest speed Pwmmin Measured Measured Pwm belonging to the lowest speed upon init. upon it. t.sub.cent 300 us 15 us Time difference of the sensor pulses at the stabilised centrifugation speed Pwm.sub.ncent Measured Measured Pwm associated with the stabilised centrifugation speed upon init. upon it. X.sub.start 5 500 Time of position regulated acceleration in pulses t.sub.accel 100 ms 1 s Time of regulated acceleration X.sub.accel 500 5000 Time of regulated acceleration in pulses Setvalue.sub.offs 0 10000 Set-value calculation offset of regulated acceleration Setvalue.sub.amp >0 1000000 Set-value calculation amplification of regulated acceleration Setvalue.sub.div1 >0 10000 Set-value divisor of reg. acceleration pwm calculation Setvalue.sub.div2 >0 10000 Set-value divisor of reg.acceleration pwm calculation X.sub.accelH 500 5000 Base value of position of reg.acceleration pwm calculation X.sub.accelL 500 5000 Base value of position of reg.acceleration pwm calculation DiV.sub.accelH 1 10000 Error signal divisor of reg.acceleration pwm calculation DiV.sub.accelL 1 10000 Error signal divisor of reg.acceleration pwm calculation t.sub.centhold 100 ms 5 min Time period of stabilised centrifugation X.sub.hold 1333 4000000 Time period of stabilised centrifugation in pulses t.sub.hold 4800 240 Sensor pulse time at a stabilised centrifugation speed measured in a processor clock signal Hold.sub.amp 0 10000 Amplification of the error signal at the stabilised centrifugation speed X.sub.decel1 500 5000 First deceleration phase time in pulses Setvalue.sub.ampdecel1 100 100000 Set-value amplification of the first deceleration phase Setvalue.sub.div1|1 >0 10000 Set-value divisor of the first deceleration phase pwm calculation Setvalue.sub.div2|1 >0 10000 Set-value divisor of the first deceleration phase pwm calculation DiV.sub.decel1H 1 10000 Error signal divisor of first deceleration phase pwm calculation DiV.sub.decel1L 1 10000 Error signal divisor of first deceleration phase pwm calculation X.sub.decel2 10 1000 Time of second (gentle) deceleration phase in pulses Div.sub.decel2 >1 100 Base value divisor of second deceleration phase Setva1ue.sub.ampdece12 100 100000 Set-value multiplier of second deceleration phase Setva1ue.sub.offadece12 1 10000 Set-value offset of second deceleration phase Div.sub.decel2sv >0 1000 Set-value pulse divisor of second deceleration phase Div.sub.decel2pwm >0 1000 Pwm divisor of second deceleration phase Setva1ue.sub.ampdecel3 >0 100 Amplification of a third (positioning) deceleration phase Pwm.sub.start 0 256 Initial pwm signal of third deceleration phase Pwm.sub.decel3 0 256 Pwm offset of third deceleration phase