微波EDA网,见证研发工程师的成长!
首页 > 硬件设计 > 电源设计 > 基于 C2000 内置 12 位 ADC 的电能计量方案

基于 C2000 内置 12 位 ADC 的电能计量方案

时间:12-06 来源:互联网 点击:

_raw为信号输入,adc_raw[0]为电压转换数据,adc_raw[1]为电流转换数据

入参:电压电流输入ADC值数值,adc_raw [0] 电压,adc_raw [1] 电流。

出参:无

2.3 地址及相应功能介绍

考虑到代码将来的改动或扩展,地址不具体定义。使用枚举变量让编译器自动生成。用户可以include的这个变量定义,使用枚举地址设置和获取数据。

int32_t get_parameter(int address)函数地址枚举变量定义如下:

获取实时数据结构

enum get_parameter_table

{

AFE_BASE_A = 0x0000,

AFE_GET_ACTIVE_POWER,

AFE_GET_REACTIVE_POWER,

AFE_GET_APPARENT_POWER,

AFE_GET_ACTIVE_ENERGY,

AFE_GET_REACTIVE_ENERGY,

AFE_GET_VRMS,

AFE_GET_IRMS,

AFE_GET_POWER_FACTOR,

AFE_GET_FREQUENCY,

AFE_GET_ENERGY_MODE,

AFE_GET_STARTUP_I,

AFE_GET_PULSE_CONST,

AFE_GET_POWER_GAINA0,

AFE_GET_PHASEOFFSET_A0,

AFE_GET_VGAINA,

AFE_GET_IGAINA,

AFE_GET_IOFFSETA,

};

以下对每个地址进行解析:

AFE_GET_ACTIVE_POWER

描述:有功功率

单位:10mW

AFE_GET_REACTIVE_POWER

描述:无功功率

单位:10mVar

AFE_GET_APPARENT_POWER

描述:视在功率

单位:10mVA

AFE_GET_VRMS

描述:电压有效值

单位:10mV

AFE_GET_IRMS

描述:电流有效值

单位:1mA

AFE_GET_POWER_FACTOR

描述:功率因数

单位:0.0001

AFE_GET_ACTIVE_ENERGY

描述:两回路中较大有功电能脉冲数

单位:依赖脉冲常数

AFE_GET_REACTIVE_ENERGY

描述:两回路中较大无功电能脉冲数

单位:依赖脉冲常数

AFE_GET_FREQUENCY

描述:系统频率

单位:0.01Hz

AFE_GET_POWER_GAINA0

描述:功率增益

AFE_GET_PHASEOFFSET_A0

描述:电压电流角差补偿

AFE_GET_VGAINA

描述:电压增益

AFE_GET_IGAINA

描述:电流增益

AFE_GET_IOFFSETA

描述:电流偏置

单位:1mA

AFE_GET_POFFSETA

描述:功率偏置

单位:10mW

AFE_GET_ENERGY_MODE

描述:能量累计模式

单位:0 绝对值累计 1 正能量累计

ZHCA501 – Jan 2013

描述:启动电流

单位:1mA

AFE_SET_PULSE_CONST

描述:脉冲常数

获取实时数据结构

enum set_parameter_table

{

AFE_SET_BASE = 0x00,

AFE_SET_POWER_GAINA0,

AFE_SET_PHASEOFFSET_A0,

AFE_SET_VGAINA,

AFE_SET_STARTUP_I,

AFE_SET_FREQUENCY,

AFE_SET_SAMPLES_10S,

AFE_SET_IGAINA,

AFE_SET_IOFFSETA,

AFE_SET_POFFSETA,

AFE_SET_ENERGY_MODE,

AFE_SET_PULSE_CONST,

AFE_SET_CAL_INIT,

};

AFE_SET_POWER_GAINA0

描述:功率增益

AFE_SET_PHASEOFFSET_A0

描述:电压电流角差补偿

AFE_SET_VGAINA

描述:电压增益

AFE_SET_STARTUP_I

描述:启动电流

单位:1mA

AFE_SET_IGAINA

描述:电流增益

AFE_SET_IOFFSETA

描述:电流偏置

单位:1mA

AFE_SET_POFFSETA

描述:功率偏置

单位:10mW

AFE_SET_PULSE_CONST

描述:脉冲常数

AFE_SET_CAL_INIT

描述:校表初始化

AFE_SET_CAL_END

描述:校表结束

AFE_SET_SAVE_FUNC描述:用户设置校表数据保存函数

3 校表介绍

3.1 校表寄存器

校表寄存器在火线零线等同对待。

功率增益寄存器

电压电流角差补偿寄存器

有功偏置寄存器

电流增益寄存器

电流偏置寄存器

电压增益寄存器

3.2 校表方法

本计量库提供了专门的接口对计量参数进行校准。校表软件在pc端运行,通过串口通讯,进行参数设置。

具体操作可参考示例代码。

3.2.1 功率增益及偏置校准

功率增益校准可以进行单点和两点校准。当单点校准时,功率偏置默认为0. 当两点校准时,功率偏置为功率相对0点的截距。校表可以通过脉冲也可以通过多次读取功率值求平均进行。两点校表公式如下:(最好取100%Ib 和 5% Ib两点)

功率增益校验公式:

EH 和 EL 为大电流和小电流时功率的误差。(如 100%Ib 和 5% Ib两点功率的误差)NH2L 为大电流和小电流的比差。(如 NH2L=100%Ib / 5%Ib = 20)

功率偏置校验公式:

PGEN 是在小电流时的标准功率值。

无功的增益和偏置类似于有功,可参考有功校准。以下是一个单点校表的例子,说明如何编写校表软件:

1. EH =0.5%

2. 原始的P1_GAINn = 10000

3. 新的 P1_GAINn+1 =10000/(1+0.5%)=9950

3.2.2 电压电流角差校准

电压电流的角度补偿使用的是软件同步。

角差补偿使用下面公式

fM是电网频率. 如果 fM = 50Hz, fm = 256×4096=1MHz, 每个步长是 0.017°,

当功率增益和偏置都校准完毕后,才对角差进行校准。步骤如下:

1. 在100%Ib点,设置功率因数为0.5L。

2. 获取当前脉冲的误差E。并将E带入下面公式

公式计算如下例:

1. E =0.3%

2. 原始的 P1_PHASEn = 6

3. 新的 P1_PHASEn+1 =10+6=16

3.2.3 电压增益校准

电压增益校准步骤如下:

1. 将电压设置成固定的电压值,如:220V

2. 如下公式

3. 设置VRMS_FACTORn+1 到功率增益

Copyright © 2017-2020 微波EDA网 版权所有

网站地图

Top