In the conventional hydraulic modulator for ABS-ESC control units, the 6 inlet valves (also
known as ISO and/or TC-ISO valves), that is, the 4 devoted to the ABS/TCS functions and
the other 2 valves devoted to the ESC functions, need a strict control of the coil energizing
current. From the point of view of the electronic components involved in the ABS-ESC
system partitioning, the above specification means to have a coil driver kit with 6 current
regulated channels. The current regulation specification guarantees to have in the coil,
driving the opening/closing of the on-off solenoid valve, the same energizing current against
supply voltage changes, temperature gradient, "stiction" phenomena inside the valve due,
for instance, to the aging and/or waste of the hydraulic and mechanical components (e.g.
brake fluid, ball, armature, spring,…) involved into the valve working.
In this work, we propose a coil driver kit, composed by L9374-L9375, for new generation
ABS/ESC control unit. The L9374 is a smart quad low side driver with 2 current regulated
channels (accuracy is about 6%) and 2 PWM channels. On the other hand, the L9375 is an
octal low side driver having 4 PWM channels and 4 conventional on-off switch channels. In
order to allow the L9374-L9375 kit to work as there are 6 current regulated channels, we
conceived a SW library, implemented by ST10252M microcontroller, that exploits data
(these data are available on the MISO bus of the SPI) coming from the 2 current regulated
channels of L9374 to calibrate the 4 PWM channels of L9375 so that they can work as
having a current regulation loop. This virtual current control loop has been tested in different
working conditions of the coil drivers:
●considering different supply voltages during the calibration and during the actuation of
the virtual current regulated channels of L9375;
●simulating different temperature gradients;
●simulating temperature mismatches between the coil driven by a current regulated
channel of L9374 and the coil driven by a virtual current regulated channel of L9375;
●considering several calibration timing and current set-points;
●taking into account different hydraulic modulators (Bosch, TRW).
Basically, the results show a satisfactory behavior of the virtual current control loop. In all the
test conditions taken into account, it comes out an accuracy of the virtual current control
loop that is similar to the nominal accuracy of the 2 current regulated channels of the L9374.
can be achieved. Starting at time zero a load error is corrected by modifying the
programmed load resistor value with an integrated correction factor I
load model correction is only available for target currents higher than 110mA. In the formula
(1) the factor R
LSPI (ISAT
+ 1) represents, in a first approximation, the real load seen by the
Qx channel of L9374 into the current control loop. Anyway, for a more detailed explanation of
the current control loop of the L9374 we remand to the L9374 datasheet.
8/34
TARGETRLSPIISAT
1+()++
RsRds on()–()++
) is corrected during the control loop. This
LSPI
). With this algorithm a fast controller dynamic
SAT
. This function of
SAT
LSPI
) while
AN2804VCCL: plan of accuracy evaluation
ˆ
ˆ
ˆ
ˆ
ˆ
Figure 5.Details on the spot calibration of the VCCL accuracy evaluation plan
During the spot calibration, once the reading window is opened (see Figure 5), the values of
VD, VBAT, ISAT are acquired. These values after an arithmetic mean are stored in some
registers of the microcontroller. Care is taken for the ISAT value because it is represented as
a two complement number (see L9374 datasheet). The values
V
V
,,
D
BAT
I
SAT
(a)
, are used
into the formula (2) implemented by the system microcontroller in order to calculate, before
to energize the coil, the right duty cycle to have a pseudo current control loop on the PWM
channels of L9375. Since the L9375 does not have a real current control loop, in the formula
(2)) there is not the Rs resistor that we can find in the formula (1) implemented by the ALU of
L9374. However, we thought to consider a minimum resistor of 50mΩ. Furthermore, the
values of the voltage drop on the free-wheeling diode (i.e. V
) have been scaled in order to
D
maintain a ratio of 3/4 between the voltage drop on the free-wheeling diode of the PWM
channels of L9375 and the voltage drop on the free-wheeling diode of the current controlled
channels of L9374.
a. The hat on the variables indicates that they are the result of an arithmetic mean applied on the different values
read via SPI once the reading window is opened (see figure5).
9/34
ABS/ESC: load analysisAN2804
3 ABS/ESC: load analysis
In order to validate the VCCL approach, we used the INLET valves of the ABS/ESC 8.0
Bosch hydraulic modulator. The Figure 6 illustrates the hydraulic modulator and the section
of an INLET valve. The coil characteristics have been measured with and without the valves
by means of the Hameg LCR Meter HM8018. The obtained values are:
●R = 4.65 Ohm, L = 1.6 mH (without the valve)
●R = 5.35 Ohm, L = 7.35 mH (with the valve)
Coil characteristics have been measured, also during the calibration phase of the regulated
channel (i.e. Q3) of L9374, using the estimation of the load done by the L9374 through the
I
factor measurement.
SAT
Figure 6.ABS/ESC 8.0 Bosch Hydraulic modulator and INLET valve section
Table 1.Characterization of the load seen by the L9374 vs. the current setpoint
imposed on the Q3 channel
Regulated channel current:
setpoint (mA)
2507.170.03
3506.720.02
4506.680.02
5506.550.06
6506.520.04
7506.210.03
8506.230.06
9506.080.16
10505.960.03
11505.60.16
Load resistor seen by L9374:
The Tab l e 1 describes the results of a characterization of the load seen by the L9374 during
the spot calibration versus different current setpoints. The mean and the standard deviation
have been calculated on a set of 10 repeated measurements done in the same conditions
(supply voltage, temperature, current setpoint, etc…).
10/34
mean (Ohm)
Load resistor seen by L9374:
std (Ohm)
AN2804Current measurement procedure: validation
4 Current measurement procedure: validation
The test-bench layout used to measure the current is based on the following components:
●oscilloscope LeCroy wave pro 7300A in ERES (Enhanced resolution, about 211 bit of
vertical resolution) mode;
●current probe amplifier Tektronix TCPA300 (DC to 100 MHz of bandwidth, DC-gain
accuracy < 1%);
●AC/DC current probe Tektronix TCP312 (Lowest Measurable Current = 1mA, Maximum
Amp-Second = 50A*µs (for 1A/V range)).
Table 2.Characterization of the procedure used to measure the current into the
VCCL validation tests
Regulated channel
current: setpoint (mA)
25025110.4
35035210.6
45045410.9
55055711.3
65065811.2
75075520.7
85085720.8
95095820.8
1050105720.7
1150115720.6
1250125220.2
135013442-0.4
1450146240.8
1550156651.0
Current measured on
the Q3 of L9374: mean
(mA)
Current measured on
the Q3 of L9374: std
(mA)
Percent deviation
from the ideal current
control accuracy of
the Q3 of L9374 (%)
The Tabl e 2 shows the results obtained from a preliminary characterization of the procedure
adopted to measure the current into the VCCL validation tests. The results in the table
Tab le 2 are referred to a set of 10 repeated measurements of the current energizing the coil
during the spot calibration of the L9374 and once the reading window is opened (see
Figure 5). It is important to highlight that the measurements have been done in the same
operative conditions (supply voltage, temperature, current setpoint, etc…). From an analysis
of the results reported in theTa b l e 2 , it comes out that, in the worst case, the test bench
layout used to measure the current is reliable within the limits of the 1% of accuracy.
11/34
VCCL accuracy evaluationAN2804
5 VCCL accuracy evaluation
The first operative conditions in which we evaluated the performance of the VCCL are the
following:
●load resistor R
●supply voltage at 12 Volt both in the calibration and actuation phases;
●ideal setpoint on the Q5 channel of L9375 in [250,1550] mA;
●current setpoint on the calibration phase at 700 mA;
●10 repeated measurements of the current mean value on the Q5 channel of L9375
after the VCCL regulation have been acquired.
Table 3.VCCL accuracy evaluation with a spot calibration having a current
setpoint on the Q3 channel of L9374 equal to 700 mA
set to 4.375 Ohm;
LSPI
Regulated channel
current: setpoint (mA)
2502444-2.3
3503431-2
45045230.3
5505304-3.7
6506355-2.2
7507368-1.9
8508443-0.7
9509365-1.4
105010228-2.7
1150113615-1.2
1250125780.5
13501360140.7
14501472231.5
15501572141.4
Current measured on
the Q3 of L9374: mean
(mA)
Current measured on
the Q3 of L9374: std
(mA)
Percent deviation
from the ideal current
control accuracy of
the Q3 of L9374 (%)
12/34
AN2804VCCL accuracy evaluation
Figure 7.VCCL accuracy evaluation with a spot calibration having a current
setpoint on the Q3 channel of L9374 equal to 700 mA
Moreover, we tested the sensitivity of the VCCL approach in the spot calibration option 1A
against power supply change. In other words, we explored the working of the VCCL when
there is a mismatch between the power supply value during the spot calibration time and
during the actuation phase of the VCCL on the PWM channels of L9375. The Tab l e 4 and
the figures 8, 9, 10 show the results of this analysis. It comes out when there is a voltage
drop going from the spot calibration on Q3 channel of L9374 to the actuation on the PWM
channels of L9375, the performance of VCCL seem to be less satisfactory than the
performance in "ideal" conditions shown before (see Ta bl e 3 and Figure 7) and the
performance when there is a voltage increase going from the spot calibration to the
actuation phase. Anyway, discarding the results referred to the ideal current setpoint of 1350
mA, also in these operative conditions, that is, voltage drop going from the spot calibration to
the actuation phase, the VCCL performance are within the 6% accuracy cone of the current
controlled channels of L9374 (see figures 8, 9, 10).
13/34
VCCL accuracy evaluationAN2804
The Tabl e 4 shows the VCCL accuracy evaluation in option 1A spot calibration versus power
supply mismatch between the power supply value during the spot calibration time and
during the actuation phase of the VCCL on the PWM channels of L9375.
Table 4.VCCL accuracy evaluation in option 1A spot calibration versus power supply
Ideal
current
setpoint
on Q5
channel
of L9375
(mA)
2502666.42541.62520.8247-1.226042656
3503664.6349-0.3334-4.6344-1.73664.63757.1
450436-3.1442-1.8435-3.3441-2448-0.44673.8
5505713.8544-1.15500525-4.55673.15805.5
6506723.46611.76723.46875.765006855.4
7507915.5747-0.47540.5746-0.57712.87996.5
8508995.88601.2843-0.8849-0.18955.39036.2
95010005.39550.5939-1.2948-0.298849985.1
105010732.210691.81032-1.710742.310853.311287.4
115012115.311631.111832.911580.711933.712327.1
125013266.112661.312661.31241-0.713024.213316.5
1350148810.214074.21444713842.514829.8151312.1
145015345.814812.11439-0.81444-0.415245.115476.7
155016627.216103.91597315681.217029.816758.1
12 V in cal. phase
9 V in actuation:
mean
current
on Q5 of
L9375
(mA)
percent
deviation
vs.
setpoint
(%)
12 V in cal. phase
15 V in actuation:
mean
current
on Q5 of
L9375
(mA)
percent
deviation
vs.
setpoint
(%)
9 V in cal. phase
12 V in actuation:
(mA)
percent
deviation
vs.
setpoint
(%)
mean
current
on Q5 of
L9375
9 V in cal. phase
15 V in actuation:
(mA)
percent
deviation
vs.
setpoint
(%)
mean
current
on Q5 of
L9375
15 V in cal. phase
15 V in actuation:
mean
current
on Q5 of
L9375
(mA)
percent
deviation
vs.
setpoint
(%)
15 V in cal. phase
9 V in actuation:
mean
current
on Q5 of
L9375
(mA)
percent
deviation
vs.
setpoint
(%)
14/34
AN2804VCCL accuracy evaluation
The Figure 8 shows VCCL accuracy evaluation in option 1A spot calibration versus power
supply mismatch between the power supply value during the spot calibration time and
during the actuation phase of the VCCL on the PWM channels of L9375.
Figure 8.VCCL accuracy evaluation in option 1A spot calibration versus power
supply
The Figure 9 shows the detail of the VCCL accuracy evaluation in option 1A spot calibration
versus power supply mismatch between the power supply value during the spot calibration
time and during the actuation phase of the VCCL on the PWM channels of L9375.
Figure 9.Detail of the VCCL accuracy evaluation in option 1A spot calibration
versus power supply
15/34
VCCL accuracy evaluationAN2804
The Figure 10 shows the detail of the VCCL accuracy evaluation in option 1A spot
calibration versus power supply mismatch between the power supply value during the spot
calibration time and during the actuation phase of the VCCL on the PWM channels of
L9375.
Figure 10. Detail of the VCCL accuracy evaluation in option 1A spot calibration
versus power supply
The second operative conditions in which we evaluated the performance of the VCCL are
the following:
●load resistor RLSPI set to 4.375 Ohm;
●supply voltage at 12 Volt both in the calibration and actuation phases;
●ideal setpoint on the Q5 channel of L9375 in [250,1550] mA;
●current setpoint on the calibration phase at 250 mA;
●10 repeated measurements of the current mean value on the Q5 channel of L9375
after the VCCL regulation have been acquired.
Also in this case we analyzed the sensitivity of the VCCL approach against power supply
mismatches. In order to improve the VCCL performance we implemented a load change
model inspired to the load characterization shown in the Section 5. Basically, if this load
change model is not implemented the performance of the VCCL approach, in the calibration
option 1B, are less satisfactory than the VCCL performance obtained with the option 1A.
The main advantage of the VCCL option 1B approach is that the current required during the
spot calibration is not enough to close the INLET valve. So the customer could repeat
periodically the same calibration procedure also taking into account to change the current
setpoint of the spot calibration always keeping the current value under the minimum value
that is enough to close the INLET valve (e.g. 500-550mA mA for the INLET valve of the 8.0
Bosch ABS/ESC control unit hydraulic modulator).
16/34
AN2804VCCL accuracy evaluation
Table 5.VCCL accuracy evaluation with a spot calibration having a current
setpoint on the Q3 channel of L9374 equal to 250 mA
Ideal current setpoint
on Q5 channel of
L9375 (mA)
2502482-0.8
35035641.7
4504477-0.7
5505494-0.2
65065470.6
7507499-0.1
8508467-0.5
95095460.4
1050105820.8
11501159110.8
12501267121.4
13501370101.5
1450144213-0.6
155015406-0.6
Current measured on
the Q5 of L9375: mean
(mA)
Current measured on
the Q5 of L9375: std
(mA)
Percent deviation
from the ideal current
setpoint on Q5
channel of L9375 (%)
Figure 11. VCCL accuracy evaluation with a spot calibration having a current
setpoint on the Q3 channel of L9374 equal to 250 mA
The Tab le 5 and the related Figure 11 describe the behavior of the VVCL approach in the
spot calibration option 1B. On the other hand, the Tab l e 6 and the figures 12, 13, 14 show
the results of the sensitivity analysis of the approach against power supply mismatches
17/34
VCCL accuracy evaluationAN2804
between the power supply values during the spot calibration and during the actuation phase.
Also in this case, it comes out when there is a voltage drop going from the calibration phase
to the actuation phase, the performance of the VCCL approach decreases. Anyway,
discarding the results referred to some ideal current setpoints, also in these operative
conditions, that is, voltage drop going from the spot calibration to the actuation phase, the
VCCL shows performance that are basically within the 6% accuracy cone of the current
controlled channels of L9374 (see figures 8, 9, 10).
At last, we have simulated a temperature mismatch between the coil associated to the Q3
channel of L9374 and the coil associated to the Q5 channel of L9375. Using some 30W 0.05
Ohm 1% precision resistors, we added a resistor of 0.4 Ohm in series either at the load coil
corresponding to the PWM channel of L9375 or at the load coil corresponding to the Q3
channel of L9374. Taking into account the formula (3) of the resistance of the chopper
versus the temperature and the initial value of the load resistor R
= 4.65 Ohm (see
initial
Section 5 ), it is simple to verify that the resistor of 0.4 Ohm in series corresponds to a
simulation of temperature gradient of 20°.
Equation 3
R
last
R
initial
10.004TΔ+()=
The tables 7, 8, 9, 10 and the figures 15, 16 show the results of this analysis. Also in this
case, it comes out that the accuracy of the VCCL maintains itself within the 6% accuracy
cone of the current controlled channels of L9374.
18/34
AN2804VCCL accuracy evaluation
The Tab le 6 shows VCCL accuracy evaluation in option 1B spot calibration versus power
supply mismatch between the power supply value during the spot calibration time and
during the actuation phase of the VCCL on the PWM channels of L9375.
Table 6.VCCL accuracy evaluation in option 1B spot calibration versus power supply
Ideal
current
setpoint
on Q5
channel
of L9375
(mA)
2502624.82531.225002531.2229-8.42687.2
35037883674.93685.13654.33777.739212
4504663.64510.2449-0.24571.64673.84622.7
5505876.75540.75612549-0.25713.85886.9
6506916.36611.76530.56571.16794.57109.2
7508097.97722.97773.67641.98097.98118.1
8509289.28833.98540.58712.58732.79218.4
95010247.89823.49702.1946-0.410005.39985.1
105011075.410520.210590.910590.910964.411247
115012054.81133-1.511600.911540.311873.212206.1
125013165.312731.812530.21230-1.612933.413377
135014577.91377213882.813671.314537.6152412.9
145014842.31426-1.71442-0.61420-2.114671.215164.6
15501628515781.815942.81581216073.716456.1
12 V in cal. phase
9 V in actuation:
mean
current
on Q5 of
L9375
(mA)
percent
deviation
vs.
setpoint
(%)
12 V in cal. phase
15 V in actuation:
mean
current
on Q5 of
L9375
(mA)
percent
deviation
vs.
setpoint
(%)
9 V in cal. phase
12 V in actuation:
(mA)
percent
deviation
vs.
setpoint
(%)
mean
current
on Q5 of
L9375
9 V in cal. phase
15 V in actuation:
mean
current
on Q5 of
L9375
(mA)
percent
deviation
vs.
setpoint
(%)
15 V in cal. phase
15 V in actuation:
mean
current
on Q5 of
L9375
(mA)
percent
deviation
vs.
setpoint
(%)
15 V in cal. phase
9 V in actuation:
mean
current
on Q5 of
L9375
(mA)
percent
deviation
vs.
setpoint
(%)
19/34
VCCL accuracy evaluationAN2804
The Figure 12 shows VCCL accuracy evaluation in option 1B spot calibration versus power
supply mismatch between the power supply value during the spot calibration time and
during the actuation phase of the VCCL on the PWM channels of L9375.
Figure 12. VCCL accuracy evaluation in option 1B spot calibration versus power
supply
The Figure 13 shows the detail of the VCCL accuracy evaluation in option 1B spot
calibration versus power supply mismatch between the power supply value during the spot
calibration time and during the actuation phase of the VCCL on the PWM channels of
L9375.
Figure 13. Detail of the VCCL accuracy evaluation in option 1B spot calibration
versus power supply
20/34
AN2804VCCL accuracy evaluation
The Figure 14 shows the detail of the VCCL accuracy evaluation in option 1B spot
calibration versus power supply mismatch between the power supply value during the spot
calibration time and during the actuation phase of the VCCL on the PWM channels of
L9375.
Figure 14. Detail of the VCCL accuracy evaluation in option 1B spot calibration
versus power supply
The Tab le 7 shows the VCCL accuracy evaluation in option 1A when a temperature
mismatch of 20° is simulated. A precision resistor of 0.4 Ohm is added in series at the coil
corresponding to the Q5 channel of L9375.
Table 7.VCCL accuracy evaluation in option 1A when a temperature mismatch of
20° is simulated (Q5 channel of L9375)
Ideal setpoint (mA)Mean (mA)
250240-4
350347-0.9
450431-4.2
550527-4.2
650627-3.5
750721-3.9
850828-2.6
9509995.2
10501004-4.4
11501094-4.9
12501202-3.8
13501341-0.7
14501408-2.9
15501530-1.3
Max percent error measured on the Q5
channel of L9375 after the VCCL (%)
21/34
VCCL accuracy evaluationAN2804
The Tab le 8 shows the VCCL accuracy evaluation in option 1A when a temperature
mismatch of 20° is simulated. A precision resistor of 0.4 Ohm is added in series at the coil
corresponding to the Q3 channel of L9374.
Table 8.VCCL accuracy evaluation in option 1A when a temperature mismatch of
20° is simulated (Q3 channel of L9375)
Ideal setpoint (mA)Mean (mA)
250248-0.8
350346-1.1
450423-6
550520-5.5
6506500
750747-0.4
8508550.6
9509712.2
105010530.3
115011651.3
125012741.9
135014044
145015073.9
155016224.6
Max percent error measured on the Q5
channel of L9375 after the VCCL (%)
The Tab le 9 shows the VCCL accuracy evaluation in option 1B when a temperature
mismatch of 20° is simulated. A precision resistor of 0.4 Ohm is added in series at the coil
corresponding to the Q5 channel of L9375.
Table 9.VCCL accuracy evaluation in option 1B when a temperature mismatch of
20° is simulated (Q5 channel of L9375)
Ideal setpoint (mA)Mean (mA)
2502541.7
3503582.4
450442-1.8
550549-0.2
650633-2.6
750746-0.5
850845-0.6
950937-1.4
10501032-1.7
11501132-1.6
12501249-0.1
135013651.1
14501442-0.6
155015500
Max percent error measured on the Q5
channel of L9375 after the VCCL (%)
22/34
AN2804VCCL accuracy evaluation
TheTab le 1 0 shows the VCCL accuracy evaluation in option 1B when a temperature
mismatch of 20° is simulated. A precision resistor of 0.4 Ohm is added in series at the coil
corresponding to the Q3 channel of L9374.
Table 10.VCCL accuracy evaluation in option 1B when a temperature mismatch of
20° is simulated (Q3 channel of L9375)
Ideal setpoint (mA)Mean (mA)
2502562.4
3503674.9
4504622.7
5505734.2
6506794.5
7507783.7
8508854.1
9509944.6
105010924
115012185.9
125013165.3
135014698.8
145014751.7
155016285
Max percent error measured on the Q5
channel of L9375 after the VCCL (%)
The Figure 15 shows the sensitivity versus coil temperature in the option 1A VCCL, results
with a mismatch of 0.4 Ohm between the load resistor of the Q3 channel of L9374 and the
Q5 channel of L9375
Figure 15. Sensitivity versus coil temperature in the option 1A VCCL
23/34
VCCL accuracy evaluationAN2804
The Figure 16 shows the sensitivity versus coil temperature in the option 1B VCCL, results
with a mismatch of 0.4 Ohm between the load resistor of the Q3 channel of L9374 and the
Q5 channel of L9375
Figure 16. Sensitivity versus coil temperature in the option 1B VCCL
24/34
AN2804VCCL: computational burden evaluation
6 VCCL: computational burden evaluation
The Figure 17 describes, in a more detail, the implementation of the VCCL. During the spot
calibration once there is the enabling of the reading window (see Figure 5), the values of VD,
VBAT, ISAT are acquired. Before to start the actuation on the Q5 channel of L9375, we
update the reading of the VBAT by means of the setting of the command register 6 of the
L9375, that is, we set the duty1 of the Q1 channel of L9375. These values are stored and
averaged. The arithmetic means are the inputs of the main function of the VCCL:
VCCL_dc_calculation. This function calculates the duty-cycle value according to the formula
(2). This duty-cycle value is used to set the command registers of the Q5 channel of L9375
in order to carry out the VCCL.
From a point of view of the computation load, we analyzed the cost of the
VCCL_dc_calculation function call for two different microcontroller architectures
(ST10F252M and ST-Pictus) by two different approaches:
●Toggling a pin before and after the VCCL_dc_calculation function call;
●Counting the number of instruction-cycles.
Figure 17. Details on the implementation of the VCCL
Toggling a pin before and after the VCCL_dc_calculation function call, we observed that the
cost of the VCCL_dc_calculation function call is 27µs for the ST10F252M and 4 µs for the
ST-Pictus, respectively. Moreover, counting the number of instruction-cycles, we estimated
about 500 instruction-cycle for each VCCL_dc_calculation function call on a microcontroller
architecture similar to ST10 one and we estimated about 250 instruction-cycle for each
VCCL_dc_calculation function call on a microcontroller architecture similar to ST-Pictus one.
Considering that for the ST10 microcontroller architecture there is a correspondence of 2
clock-hits for each instruction-cycle, the VCCL_dc_calculation function call costs about 1000
25/34
VCCL: computational burden evaluationAN2804
clock-hits, that is, about 25 µs for the ST10F252M clock-frequency at 40 MHz. On the other
hand, considering that for ST-Pictus microcontroller architecture there is a correspondence
of 1 clock-hit for each instruction-cycle, the VCCL_dc_calculation function call costs about
250 clock-hit, that is, about 3.9 µs for the clock-frequency at 64 MHz. Both the estimation
based on the counting of the instruction-cycles number confirm the results measured by the
oscilloscope via toggling mode approach. Finally, taking into account that the worst case is
when you have to drive all the 4 PWM channels of the L9375 setting two different duty-cycle
values (two different current set-points) into the cycle-time, this means 8 different
VCCL_dc_calculation function calls for each cycle-time, that is, about 200 µs for the
STF252M and 32 µs for the ST-Pictus, respectively.
26/34
AN2804VCCL: fixed point arithmetic
ˆ
ˆ
ˆ
ˆ
ˆ
7 VCCL: fixed point arithmetic
The Figure 18 describes the implementation of the VCCL_dc_calculation function. The
averaged values of with the current setpoint I
VCCL_dc_calculation function. The local parameters Rs and Rdson are equal to 50 mΩ and
200 mΩ, respectively.
Figure 18. Details on the implementation of the VCCL_dc_calculation function
V
V
,,
D
BAT
I
SAT
TA R GE T
are the inputs of the
The inputs, outputs and the local parameters of the VCCL_dc_calculation function are
interpreted as unsigned fixed point rationals. Even though, is represented on the
I
SAT
status registers 8 and 9 of the L9374 as a two complement number, for a sake of simplicity,
we preferred to consider as an U(0,9) number. If the sign bit, the MSB of the data bits
I
SAT
string is low I read the least significant 9 bits as an U(0,9), otherwise if the sign bit if the sign
bit is high I read the least significant 9 bits as an U(0,9) after a not of the word plus 1.
Furthermore, I read I
TA R GE T
interpretation of the current setpoint (i.e. I
as an U(1,13). It is possible to demonstrate that this
TA R GE T
) implies an error in data representation of
0.5%.
The steps of the VCCL_dc_calculation function call are the following:
●(1+I
●I
●I
●Num1 = I
●Num2 = (Rlspi*(1+Isat))>>2 - U(5,11)
●Num2 = I
●NumEff = Num1 + Num2>>7 -- U(7,17)
●Den1 = Vd + Vbat<<3 -- U(6,7)
●Den2 = I
●DenEff = Den1<<6 + Den2>>6 - U(7,13)
●NumEff = NumEff>>4 -- U(7,13)
●NumEff = NumEff*100
●dc = (NumEff<<4)/DenEff … I read this as an U(5,4)
sat
TA RG E T
TA RG E T
) - U(1,9)
*Rs - U(4,19)
*Rs>>2 - U(4,17)
TA R GE T
TA R GE T
TA RG E T
*Rs + Vd<<10 -- U(5,17)
*Rlspi*(1+Isat) - U(6,24)
*(Rs-Rsdson) -- U(4,19)
27/34
VCCL: fixed point arithmeticAN2804
The local variables listed before are unsigned integer at 32 bits. After the duty-cycle
calculation, you have only to set the command registers (i.e. 10, 11, 12, 13) of the PWM
channels of L9375 you want to drive as there was a current control loop.
At last, we reassume, in the Ta bl e 11 , the results of an off-line characterization of the
VCCL_dc_calculation function for different values of the current setpoint and of the Isat
factor.
Table 11.Analysis of the error propagation in the VCCL_dc_calculation function
call versus different Isat value and current setpoints
Isat
value
Setpoint 250 mA
0.115.715.51.3
0.317.5217.31251.2
0.519.35519.18750.9
-0.113.85313.68751.2
-0.312.0211.811.7
-0.510.185101.8
Setpoint 350 mA
0.119.9119.561.8
0.322.4822.121.6
0.525.0524.6251.7
-0.117.338171.9
-0.314.76714.43752.2
-0.512.19611.93752.1
Setpoint 450 mA
Floating point
calculation of duty
cycle
Fixed point
calculation of duty
cycle
Percent error between
fixed and floating point
calculation
0.124.14723.751.6
0.327.45827.061.4
0.530.76930.311.5
-0.120.83520.43751.9
-0.317.52417.18751.9
-0.514.21313.8752.4
Setpoint 550 mA
0.127.9628.06-0.4
0.329.9830.06-0.3
0.536.0636.18-0.3
-0.123.924-0.4
28/34
AN2804VCCL: fixed point arithmetic
Table 11.Analysis of the error propagation in the VCCL_dc_calculation function
call versus different Isat value and current setpoints (continued)
Isat
value
-0.319.8519.93-0.4
-0.515.7915.87-0.5
Setpoint 650 mA
0.132.65832.31251.1
0.337.45537.06251.0
0.542.25341.8750.9
-0.127.86127.51.3
-0.323.06322.68751.6
-0.518.26517.8752.1
Setpoint 750 mA
0.136.93336.56251.0
0.342.47742.1250.8
0.548.0247.6250.8
-0.131.389311.2
-0.325.84525.43751.6
Floating point
calculation of duty
cycle
Fixed point
calculation of duty
cycle
Percent error between
fixed and floating point
calculation
-0.520.319.8752.1
Setpoint 850 mA
0.140.5540.81-0.6
0.346.8547.12-0.6
0.553.1453.37-0.4
-0.134.2634.5-0.7
-0.327.9628.18-0.8
-0.521.6721.87-0.9
Setpoint 950 mA
0.145.5245.061.0
0.352.56652.1250.8
0.559.6159.18750.7
-0.138.478381.2
-0.331.43430.93751.6
-0.524.39123.8752.1
Setpoint 1050 mA
0.149.83649.3750.9
29/34
VCCL: fixed point arithmeticAN2804
Table 11.Analysis of the error propagation in the VCCL_dc_calculation function
call versus different Isat value and current setpoints (continued)
Isat
value
0.357.63357.18750.8
0.565.4365.06250.6
-0.142.0441.56251.1
-0.334.24233.751.4
-0.526.44525.93751.9
Setpoint 1150 mA
0.153.2253.68-0.9
0.361.5362.31-1.3
0.570.08970.87-1.1
-0.144.6745.125-1.0
-0.336.1236.56-1.2
-0.527.5727.93-1.3
Setpoint 1450 mA
0.166.0566.68-1.0
0.376.8977.56-0.9
Floating point
calculation of duty
cycle
Fixed point
calculation of duty
cycle
Percent error between
fixed and floating point
calculation
0.587.7288.5-0.9
-0.155.2255.81-1.1
-0.344.3844.93-1.2
-0.533.5534.06-1.5
Setpoint 1550 mA
0.170.3671.18-1.2
0.381.9682.87-1.1
0.593.5694.56-1.1
-0.158.7659.56-1.4
-0.347.1647.81-1.4
-0.535.5636.12-1.6
Setpoint 1650 mA
0.174.6775.62-1.3
0.387.0488.12-1.2
0.599.41100-0.6
-0.162.3163.18-1.4
-0.349.9450.68-1.5
30/34
AN2804VCCL: fixed point arithmetic
Table 11.Analysis of the error propagation in the VCCL_dc_calculation function
call versus different Isat value and current setpoints (continued)
Isat
value
-0.537.5738.25-1.8
Setpoint 1750 mA
0.179.0180.06-1.3
0.392.1493.31-1.3
0.51001000.0
-0.165.8766.87-1.5
-0.352.7353.56-1.6
-0.539.5940.31-1.8
Floating point
calculation of duty
cycle
Fixed point
calculation of duty
cycle
Percent error between
fixed and floating point
calculation
31/34
AcronymsAN2804
8 Acronyms
Table 12.Acronyms
AcronymName
ABSAntilock Brake System
ALUArithmetic Logic Unit
CNRCurrent Not Reachable
ESCElectronic Stability Control
ESPElectronic Stability Program
MISOMaster Input Slave Output
MOSIMaster Output Slave Input
PWMPulse Width Modulation
SPISerial Peripheral Interface
TCSTraction Control System
VCCLVirtual Current Control Loop
32/34
AN2804Revision history
9 Revision history
Table 13.Document revision history
DateRevisionChanges
25-Jul-20081Initial release.
33/34
AN2804
Please Read Carefully:
Information in this document is provided solely in connection with ST products. STMicroelectronics NV and its subsidiaries (“ST”) reserve the
right to make changes, corrections, modifications or improvements, to this document, and the products and services described herein at any
time, without notice.
All ST products are sold pursuant to ST’s terms and conditions of sale.
Purchasers are solely responsible for the choice, selection and use of the ST products and services described herein, and ST assumes no
liability whatsoever relating to the choice, selection or use of the ST products and services described herein.
No license, express or implied, by estoppel or otherwise, to any intellectual property rights is granted under this document. If any part of this
document refers to any third party products or services it shall not be deemed a license grant by ST for the use of such third party products
or services, or any intellectual property contained therein or considered as a warranty covering the use in any manner whatsoever of such
third party products or services or any intellectual property contained therein.
UNLESS OTHERWISE SET FORTH IN ST’S TERMS AND CONDITIONS OF SALE ST DISCLAIMS ANY EXPRESS OR IMPLIED
WARRANTY WITH RESPECT TO THE USE AND/OR SALE OF ST PRODUCTS INCLUDING WITHOUT LIMITATION IMPLIED
WARRANTIES OF MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE (AND THEIR EQUIVALENTS UNDER THE LAWS
OF ANY JURISDICTION), OR INFRINGEMENT OF ANY PATENT, COPYRIGHT OR OTHER INTELLECTUAL PROPERTY RIGHT.
UNLESS EXPRESSLY APPROVED IN WRITING BY AN AUTHORIZED ST REPRESENTATIVE, ST PRODUCTS ARE NOT
RECOMMENDED, AUTHORIZED OR WARRANTED FOR USE IN MILITARY, AIR CRAFT, SPACE, LIFE SAVING, OR LIFE SUSTAINING
APPLICATIONS, NOR IN PRODUCTS OR SYSTEMS WHERE FAILURE OR MALFUNCTION MAY RESULT IN PERSONAL INJURY,
DEATH, OR SEVERE PROPERTY OR ENVIRONMENTAL DAMAGE. ST PRODUCTS WHICH ARE NOT SPECIFIED AS "AUTOMOTIVE
GRADE" MAY ONLY BE USED IN AUTOMOTIVE APPLICATIONS AT USER’S OWN RISK.
Resale of ST products with provisions different from the statements and/or technical features set forth in this document shall immediately void
any warranty granted by ST for the ST product or service described herein and shall not create or extend in any manner whatsoever, any
liability of ST.
ST and the ST logo are trademarks or registered trademarks of ST in various countries.
Information in this document supersedes and replaces all information previously supplied.
The ST logo is a registered trademark of STMicroelectronics. All other names are the property of their respective owners.