ARMD 10.40 (Torque-Based Anti-Jerk Function)
From Nefmoto
See the funktionsrahmen for the following diagrams:
armd-armd Main function
armd-kifz Subfunction KIFZ (amplification of vehicle model)
armd-flrar Subfunction FLRAR (amplification factor for modelling of external load)
armd-fdar Subfunction FDAR (amplification factor for anti-jerk intervention)
armd-nmoti Subfunction NMOTI
armd-ndfil Subfunction NDFIL (filtered engine speed difference)
armd-frgar Subfunction FRGAR
armd-iniarv Subfunction INIARV
armd-kup gw Subfunction KUPGW
armd-dmar Subfunction DMAR (delta torque anti-jerk)
armd-varss Subfunction VARSS
ARMD 10.40 Function Description
Function purpose
The anti-jerk function detects oscillations of the power train and damps them out by applying opposing-phase torque interventions. The torque intervention is converted into an ignition angle offset by the torque interface.
Desired phase position of the torque intervention
In order to damp the power train oscillation efficiently, the torque intervention should counteract engine speed oscillations. Thereby the same effect is achieved as if the attenuation coefficient of the drive shaft is increased.
Operation pattern of anti-jerk function
Basic idea: a reference speed without oscillation and corresponding to the driver’s demand is evaluated. The difference between desired and actual engine speed isolates the oscillation. A counteracting delta torque is set which is proportional to this oscillation.
The function is realized by a simple vehicle model consisting of an integrator with the constant kifz_w. The input to this integrator is the difference between the driver’s predetermined clutch torque mkar_w and the load torque mlast_w. The output from the integtrator is the modelled engine speed nmod_w. The engine speed difference ndiff_w between the modelled engine speed nmod_w and the actual engine speed nmot_w now forms the basis for the torque intervention as well as for the calculation of the load torque. The load torque is evaluated proportional to the engine speed difference and the factor flrar is taken from the corresponding characteristic line. The engine speed difference ndiff_w contains another offset besides the oscillation part. This offset is filtered on a 50 ms scan timescale through a discrete second order low pass filter. (Coefficients of the nominator polynomial are denoted A0, A1 and A2 and of the denominator polynomial 1, B1 and B2.
The filtered offset ndfil_w is substracted from the differential engine speed and gives the engine speed oscillation ndar_w.
Proportionally to this engine speed and using the factor fdar, a delta torque as a torque intervention is calculated. If this intervention lays between the limits KFDMDARU and KFDMDARO, it is set to zero.
Activation Conditions
The model is always active, just the intervention can be switched off.
Application Notes
Conditions for calibration of anti-jerk
The basic calibration of the vehicle must have been done. This includes the transition compensation and all functions for the torque interface.
1. Evaluation of the integrator constant kifz_w and flrar
Coarse application: Drive on the road (flat surface, no hills) at a constant speed in respective gear with the anti-jerk function deactivated (fdar=0). Then execute a change in load and register the calculated coupling torque mkar_w and the engine speed nmot_w.
Evaluation of integrator constant as follows: at a load step the torque jump is approximately delta M (in %) and the speed approximately rises with constant gradient gradn (in RPM/s). Kifz_w is then calculated from the expression gradn/(delta M). A typical value for second gear is 4.6 x 100/MDNORM [RPM/(sx%)].
Fine application:
Driving on flat surface. Set the product kifz_w x flrar to a fixed value (recommendation: 15). Realization of load jumps with registration of mkar_w, mlast_w, nmot_w and ndiff_w. Vary the couple kifz_w and flrar (maintaining the product constant!) until ndiff_w remains approximately constant during a load jump.
In principle the following process is valid for the amplification factor flrar: high factors cause a reduction of the offset ndfil_w, but also a big phase advance of ndiff_w.
2. Evaluation of filter parameters
Low pass filter in 50 ms scan rate: transmission function has the form G(z) = Z(z)/N(z) with
Z(z) = A0 + A1z-1 + A2z-2
N(z) = 1 + B1z-1 + B2z-2.
Select one of the low pass filters listed in the table below, according to the appearing jerk frequency:
TP No. |
Limit freq. |
A0 |
A1 |
A2 |
B1 |
B2 |
1 |
0.67 Hz |
0.0095 |
0.0191 |
0.0095 |
-1.7056 |
0.7437 |
2 |
0.80 Hz |
0.0134 |
0.0267 |
0.0134 |
-1.6475 |
0.7009 |
3 |
1.00 Hz |
0.0201 |
0.0402 |
0.0201 |
-1.5610 |
0.6414 |
Low pass filter No. 3 is recommended. The attenuation of the jerk frequency is determined by the margin between the jerk frequency and the filter cut-off frequency. The bigger the filter cut-off frequency, the smaller the time the filter needs to stabilize. Attenuation: modification of a single coefficient of G(z) is not permitted!
3. Evaluation of fdar
Recommendation is fdar = 0.67 x 100/MDNORM (%/RPM). Increase of attenuation by enlargement of fdar, reduction of fdar decreases the attenuation.
4. Thresholds KFDMDARO and KFDMDARU
In case the delta torque for the intervention is within these thresholds, it is set to zero. This avoids undesired ignition angle instability. Typical values are: KFDMDARU = -5 x 100/MDNORM [%], KFDMDARO = 5 x 100/MDNORM [%].
Abbreviations
A0 |
Transmission coefficient |
A1 |
Transmission coefficient |
A2 |
Transmission coefficient |
B1 |
Transmission coefficient |
B2 |
Transmission coefficient |
CWARMD |
Code word anti jerk function |
DMARMX |
Maximum limit of the steady-state torque interventions of the anti-jerk function |
DNFILO |
Upper threshold of filter output gradient ndfil |
DVFZAR |
Hysteresis for vehicle speed limit during anti-jerk |
FLRAWG |
Integrator gain factor of the load controller during AT (throttle plate closed) |
FLRHG |
Integrator gain factor of the load controller |
FRARAWG |
Integrator gain factor during AT (throttle plate closed) |
FRARHG |
Integrator gain factor |
KFDMDADP |
Upper threshold for torque-intervention during dashpot |
KFDMDARO |
Upper threshold for torque intervention |
KFDMDAROS |
Upper threshold for steady-state torque intervention |
KIFZGAWG |
Integrator gain factor in the vehicle model with AT (throttle plate closed) |
KIFZGHG |
Integrator gain factor in the vehicle model with HG |
NARAO |
Upper engine speed threshold for anti-jerk function active |
NARASTG |
RPM threshold in higher gear for anti-jerk active |
NARLLGA |
Speed threshold for anti-jerk at idle |
NDFILOG |
Threshold for filter output ndfil |
NDIFFOG |
Threshold engine speed difference for initialization of anti-jerk during braking |
NVG |
Factor to calculate engine speed initialization |
NVMNG |
Minimum speed / velocity ratio |
NVMXG |
Maximum speed / velocity ratio |
SMK08MDSW |
Anti-jerk torque dependent basic point (number =8) |
TAREIN |
Blocking time for anti-jerk function |
TMAR |
Lower engine temperature threshold for anti-jerk release |
TMLAST |
Blocking time until the initialization of the anti-jerk is triggered at deceleration |
TVARS |
Delay time until anti-jerk is inactive again |
TVARSS |
Delay time for anti-jerk becoming inactive again in steady-state conditions |
TVKUPAR |
Delay time for clutch for anti-jerk function |
TVKUPHS |
Delay time for clutch switch during shifting in higher gear |
TVKUPRS |
Delay time for clutch switch during shifting in lower gear |
TZSPINI |
Blocking time for filter initialisation |
VARAU |
Minimum vehicle speed for anti-jerk active |
WPEDU |
Pedal lower threshold value for anti-jerk function |
B_AR |
Condition: anti-jerk active |
B_ARGF |
Condition: anti-jerk transition window |
B_AUTGET |
Condition: automatic gearbox |
B_BREMS |
Condition: brake operated |
B_DASHV |
Condition: dashpot delayed |
B_FGR |
Condition: driver's set engine torque determined by cruise control |
B_GFEN |
Condition: transition window |
B_GWHS |
Condition: gear change on manual transmission vehicle |
B_HPNMOT |
Condition: high-point speed oscillation |
B_INIAR |
Condition: initialization of anti-jerk function |
B_INIAR1 |
Condition: provisional initialization of anti-jerk function |
B_INIARV |
Condition: initialization of the filter function is delayed |
B_KUPGW |
Condition: clutch applied until shifting of geanti-jerk is detected |
B_KUPPL |
EGAS Condition: clutch is disengaged |
B_LL |
Condition: idle |
B_LSD |
Condition: limitation of positive torque gradient active |
B_SA |
Condition: fuel cut-off |
B_STEND |
Condition: end of start reached |
B_TPNMOT |
Condition: low-point speed oscillation |
B_TVARS |
Condition: anti-jerking function dynamically active |
B_TVARSS |
Condition: anti-jerking function steady-state active |
B_WK |
Condition: converter lockup clutch closed |
DMAR_W |
Delta torque anti-jerk |
FDAR |
Amplification factor for anti-jerk intervention |
FLRAR |
Amplification factor for modelling of external load |
GANGI |
Engaged gear |
KIFZ_W |
Amplification of vehicle model |
MDBES_W |
Acceleration torque |
MDVERL_W |
Resistant torque of the engine |
MIFA_W |
Desired indicated engine torque |
MISOLV_W |
Indicated resultant nominal torque before torque limitation |
MKAR_W |
Calculated clutch torque for anti-jerk function |
MLAST_W |
Estimated load moment |
NDAR_W |
RPM difference for torque control |
NDFIL_W |
Filtered engine speed difference |
NDIFFOG_W |
Threshold engine speed difference for reset of anti-jerk during braking |
NDIFF_W |
Engine speed difference for ISC amplification |
NMODIV_W |
Engine speed for initialising ARMD calculated from velocity |
NMOD_W |
Engine speed from model |
NMOT_W |
Actual engine speed |
NVQUOT_W |
Quotient engine speed / vehicle speed |
TMOT |
Engine temperature |
VFZG |
Vehicle speed (km/h) |
VFZG_W |
Vehicle speed (km/h, word) |
WPED_W |
Normalised throttle pedal angle (word) |