SLAA494B May   2011  – September 2023 MSP430AFE221 , MSP430AFE222 , MSP430AFE223 , MSP430AFE231 , MSP430AFE232 , MSP430AFE233 , MSP430AFE251 , MSP430AFE252 , MSP430AFE253

 

  1.   1
  2.   Implementation of a Single-Phase Electronic Watt-Hour Meter Using the MSP430AFE2xx
  3. Trademarks
  4. Introduction
  5. Block Diagram
  6. Hardware Implementation
    1. 4.1 Power Supply
      1. 4.1.1 Resistor Capacitor (RC) Power Supply
      2. 4.1.2 Switching-Based Power Supply
    2. 4.2 Analog Inputs
      1. 4.2.1 Voltage Inputs
      2. 4.2.2 Current Inputs
  7. Software Implementation
    1. 5.1 Peripherals Setup
      1. 5.1.1 SD24 Setup
    2. 5.2 Foreground Process
      1. 5.2.1 Formulas
        1. 5.2.1.1 Voltage and Current
        2. 5.2.1.2 Power and Energy
    3. 5.3 The Background Process
      1. 5.3.1 Voltage and Current Signals
      2. 5.3.2 Phase Compensation
      3. 5.3.3 Frequency Measurement and Cycle Tracking
      4. 5.3.4 LED Pulse Generation
    4. 5.4 Energy Meter Configuration
  8. Energy Meter Demo
    1. 6.1 EVM Overview
      1. 6.1.1 Connections to the Test Setup or AC Voltages
      2. 6.1.2 Power Supply Options
    2. 6.2 Loading the Example Code
      1. 6.2.1 Opening the Project
  9. Results
    1. 7.1 Viewing Results on PC
    2. 7.2 Viewing Results During Debug
  10. Important Notes
  11. Schematics
  12. 10References
  13. 11Revision History

Frequency Measurement and Cycle Tracking

The instantaneous I and V signals for each phase are accumulated in 48-bit registers. A cycle tracking counter and sample counter keep track of the number of samples accumulated. When approximately one second of samples have been accumulated, the background process stores these 48-bit registers and notifies the foreground process to produce the average results like RMS and power values. The sample code uses cycle boundaries to trigger the foreground averaging process, because this gives very stable results.

For frequency measurements, the sample code does a straight-line interpolation between the zero-crossing voltage samples. Figure 5-4 shows the samples near a zero crossing and the process of linear interpolation.

GUID-19A82485-B8C9-40CD-804D-63DF8BE32DCE-low.gifFigure 5-4 Frequency Measurement

Because noise spikes can also cause errors, the codes uses a rate-of-change check to filter out the possible erroneous signals and make sure that the points interpolated from are genuine zero-crossing points. For example, with two negative samples, a noise spike can make one of them positive and, therefore, make the negative and positive pair looks as if there were a zero crossing.

The resultant cycle-to-cycle timing goes through a weak low-pass filter to further smooth out cycle-to-cycle variations. This results in a stable and accurate frequency measurement that is tolerant of noise.