Auto-calibration – Maxim Integrated 71M6513H Power Meter IC Family Software User Manual

Page 57

Advertising
background image

71M651x Software User’s Guide

Auto-Calibration

Auto-calibration is a simplified calibration procedure based on voltage and current measurements. A 0° load angle
(pure resistive load) is assumed. No phase compensation will be performed. Before starting the auto-calibration
process, the user enters the target values for voltage and current that will be applied during the calibration process in
the MPU addresses 0x2029 and 0x202A (see description of aut-calibration in the CLI section). The target values
should be applied to the meter and held constant during the auto-calibration process.

The routines shown in Figure show how auto-calibration is started. The cal_begin() routine starts a state-machine by
setting the flag cal_flag to YES, after setting the calibration factors to default values, recording the calibration
temperature, calculating the temperature compensation coefficients and setting the counter cs for calibration cycles.

The actual stabilization delay, measurement and adjustment phases are managed by separate routines that are
activated by cal_flag being YES and controlled by the variable cs which counts down accumulation intervals.

cal_begin()

END

set calibration values to unity

record calibration

temperature

start count down sequence

calculate PPMC and PPMC2

and write to CE

cal_flag = YES

set calibration values to

unity

END

copy table of starting values

to CE data area

calculate PPMC and PPMC2

and write to CE

populate table with unity

values

Figure 5-15: Auto-Calibration

The processing of the calibration steps is performed by the routine calibration(), which is called in ce_update() when
new data becomes available, i.e. once per accumulation interval. The auto-calibration mechanism functions as a
state-machine, sequenced by the variable “cs”, which is used to count down accumulation intervals:

1) If cs > Scal: The state machine waits for the CE to settle after the unity gain and temperature

compensation data are loaded in the routine cal_begin().

2) If cs = Scal: The variables for each cumulative voltage and current measurement are cleared.

3) If 0 <= cs <= Scal: For two accumulation intervals, prorated measurements of current and voltage are

added to the variables. Using two accumulation intervals covers both chop polarities of temperature
measurements.

4) If cs = 0: This signals the end of the calibration. Cumulative current and voltage measurements are then

used to calculate and set the calibration coefficients for voltage and currents in CE DRAM.

Revision 2.4

TERIDIAN Proprietary

57 of 137

© Copyright 2005-2006 TERIDIAN Semiconductor Corporation

Advertising