ADI 技术
直播中

胡雄相

7年用户 158经验值
私信 关注
[问答]

ADE7880数据校准功率不正常

各们专家:
我用ADE7880开发一段时间了,在ADI公司的技术人员辅导下,对各个参量进行校准,具体方法如下:
我的CT和电阻配制后产生的百分比:分别是电流:6.08%  5A  电压:44.14%  220V(这里我暂保留2位小数)
            电流I(ABC三相同样处理): AIRMS/((3766572*6.08%)/5)
            电压U(ABC三相同样处理): AVRMS/((3766572*44.14%)/220)
            有功功率P(ABC三相同样处理): AWATT/((27059678*44.14%*6.08%)/(220*5))
            无功功率Q(ABC三相同样处理):AFVAR/(27059678*44.14%*6.08%)/(220*5))   
            视在功率S(ABC三相同样处理):AVA/(27059678*44.14%*6.08%)/(220*5))
            频率(ABC三相同样处理): Fa=256000/APERIOD
            功率因数(ABC三相同样处理):COSA=APF/32768
            电能LSB:220*5*100/(68818*44.14%*6.08%*100)ws
            有功电能累计:AWATTHR*LSB   
            无功电能累计:AFVARHR*LSB  
            视在电能累计:AVAHR*LSB
上面均只写一相的校准方法,其他相按同样处理。

上面一共11个参量的值,我按上面的方法去校准后(没做增益和相位校准),存在以下问题:
1,电流和电压数值基本上是很接近,数值上应该没有问题,但是在改变方向时,没有正负号之分,后来直接读AIRMS和AVRMS时发现改变方向并没有改变读取到的数值。这个是什么原因啊?
2,有功功率,无功功率,视在功率全部不正常,数值混乱,且不稳定,是不是这个数据校准和读取方法有问题?
3,有功电能,无功电能也是不正常,基本上没有反应。
以上数据正常的只有频率和功率因数。我采用的是电测量标准信号源,精度是0.005级。
望各位大师指点!

回帖(12)

沈汝

2018-12-27 09:36:49
1,电流和电压数值基本上是很接近,数值上应该没有问题,但是在改变方向时,没有正负号之分,后来直接读AIRMS和AVRMS时发现改变方向并没有改变读取到的数值。这个是什么原因啊?
电流和电压有效值是没有方向性的,他们永远是正数值。
 
2,有功功率,无功功率,视在功率全部不正常,数值混乱,且不稳定,是不是这个数据校准和读取方法有问题?
3,有功电能,无功电能也是不正常,基本上没有反应。
 
问题2,3,很可能是设置不正确,能否把所有初始化7880的设置发上来?
举报

胡雄相

2018-12-27 09:42:14
引用: 色色隐隐 发表于 2018-12-27 11:39
1,电流和电压数值基本上是很接近,数值上应该没有问题,但是在改变方向时,没有正负号之分,后来直接读AIRMS和AVRMS时发现改变方向并没有改变读取到的数值。这个是什么原因啊?
电流和电压有效值是没有方向性的,他们永远是正数值。
 

谢谢您,问题一后来我想了一下,确实是,交流电流电压是没有方向的,虽然他们的寄存器(XIRMS,XVRMS)里24位带符号位的数据。
有功功率和无功功率还有电能读数完全不正确我也想可能是有些寄存器设置问题,但是不知道有哪些地方需要设置的,我所有的寄存器设置都是采用默认值。具体如下:
void ADE7880Cfg()
  {
   ADE7880.Write2byte_ADE7880(Gain,0x0000);
   ADE7880.Write2byte_ADE7880(CONFIG,0x0002); 
   ADE7880.Write2byte_ADE7880(HPFDIS,0x0000);
   ADE7880.Write4byte_ADE7880(AIGAIN,0x00000000); 
   ADE7880.Write4byte_ADE7880(AVGAIN,0x00000000);
   ADE7880.Write4byte_ADE7880(BIGAIN,0x00000000);
   ADE7880.Write4byte_ADE7880(BVGAIN,0x00000000);
   ADE7880.Write4byte_ADE7880(CIGAIN,0x00000000);
   ADE7880.Write4byte_ADE7880(CVGAIN,0x00000000);
   ADE7880.Write4byte_ADE7880(NIGAIN,0x00000000);
   ADE7880.Write4byte_ADE7880(AIRMSOS,0x00000000);
   ADE7880.Write4byte_ADE7880(AVRMSOS,0x00000000);
  // ADE7880.Write4byte_ADE7880(BIRMSOS,0x00000000);
   ADE7880.Write4byte_ADE7880(BVRMSOS,0x00000000);
  // ADE7880.Write4byte_ADE7880(CIRMSOS,0x00000000);
   ADE7880.Write4byte_ADE7880(CVRMSOS,0x00000000);
  // ADE7880.Write4byte_ADE7880(NIRMSOS,0x00000000);
   ADE7880.Write4byte_ADE7880(AWGAIN,0x00000000);
   ADE7880.Write4byte_ADE7880(AWATTOS,0x00000000);
   ADE7880.Write4byte_ADE7880(BWGAIN,0x00000000);
   ADE7880.Write4byte_ADE7880(BWATTOS,0x00000000);
   ADE7880.Write4byte_ADE7880(CWGAIN,0x00000000);
   ADE7880.Write4byte_ADE7880(CWATTOS,0x00000000);
   ADE7880.Write2byte_ADE7880(APHCAL,0x0000);
   ADE7880.Write2byte_ADE7880(BPHCAL,0x0000);
   ADE7880.Write2byte_ADE7880(CPHCAL,0x0000);
   ADE7880.Write1byte_ADE7880(ACCMODE,0x80);
   ADE7880.Write1byte_ADE7880(COMPMODE,0x80);
   ADE7880.Write1byte_ADE7880(MMODE,0x1C);
   ADE7880.Write1byte_ADE7880(WTHR,0x03);   
   ADE7880.Write1byte_ADE7880(VARTHR,0x03);
   ADE7880.Write1byte_ADE7880(VATHR,0x03); 
   ADE7880.Write4byte_ADE7880(VLEVEL,0x00000000);
   ADE7880.Write4byte_ADE7880(VNOM,0x000000); 
   ADE7880.Write1byte_ADE7880(LCYCMODE,0x78); 
   ADE7880.Write2byte_ADE7880(LINECYC,0xFFFF);
   ADE7880.Write4byte_ADE7880(MASK0,0x00000000); 
   ADE7880.Write4byte_ADE7880(MASK1,0x00000000);
   ADE7880.Write2byte_ADE7880(0xE7FE,0xAD); 
   ADE7880.Write2byte_ADE7880(0xE7E3,0x80);
   ADE7880.Write2byte_ADE7880(Run,0x0001);
  }
举报

沈汝

2018-12-27 10:01:28
引用: 年年二设 发表于 2018-12-27 11:45
谢谢您,问题一后来我想了一下,确实是,交流电流电压是没有方向的,虽然他们的寄存器(XIRMS,XVRMS)里24位带符号位的数据。
有功功率和无功功率还有电能读数完全不正确我也想可能是有些寄存器设置问题,但是不知道有哪些地方需要设置的,我所有的寄存器设置都是采用默认值。具体如下:
void ADE7880Cfg()

看了设置,没有明显不合理,只是Vlevel需要设置合适的数值,设置数值和输入电压相关,详见数据手册。
 
读到的AWATT读数是多少?读数稳定吗?
 
提到的电能是AWTTHR等寄存器吗?读数是多少?读数稳定吗?
举报

胡雄相

2018-12-27 10:09:38
引用: 色色隐隐 发表于 2018-12-27 12:04
看了设置,没有明显不合理,只是Vlevel需要设置合适的数值,设置数值和输入电压相关,详见数据手册。
 
读到的AWATT读数是多少?读数稳定吗?


这个是正向从AWATT的读数。

这个是反向从AWATT中读到的数。
这个是直接的读数没有做任何处理的原始数据。
AWATTHR电能的读数是一个固定的数(这个数据没有截图),不管测试时间多久,一个小时或8个小时这个值都不变,按我的理解这个AWATTHR的值应该是根据时间的变化而变化,假如里面的值是3215(10进制)那么这个时间段产生的电能就是3215*1LSB。然后换算成KWH,就应该该时间段消耗的电能。不知道我的这样理解对不对?另外我在看电能这部分内容一直一个线周期电能累计,还要设置一些寄存器,一直弄不明白这个线周期什么意思?跟电能寄存器AWATTHR的数值有什么关系?盼专家指点!
举报

更多回帖

发帖
×
20
完善资料,
赚取积分