CS5463 实际电压 电流的读取转换
请问下大家 Vrms 和Irms读取的值, 怎么转换成实际电压和电流啊。我分别查了 5W,11W,60W的白炽灯,节能灯。
读取的Irms数据如下
5W: 03BC36
11W: 03C198
60W: 0475BC
Vrms:74e44e(后16位也在一个范围内变动)
后16为会一直小范围变动,没有做过校准。
读取的一些配置信息和我设置的都一样, 读取0x04和0x08(电压电流增益)为0x400000
读取Vrms和Irms的时候 状态寄存器返回的是0x900081表示DRDY CRDY FUP都已经更新了,并且命令是对的 。
初始化函数如下
void cs5463init(void)
{
unsigned char statue={0x5e,0x80,0x00,0x00};
unsigned char config={0x40,0x00,0x00,0x01};
unsigned char count ={0x4a,0x00,0x0f,0xa0};
unsigned char mask={0x74,0x00,0x00,0x00};
unsigned char smode ={0x64,0x00,0x00,0x01};
unsigned char start ={0xe8,0x00,0x00,0x00};
goio_init();
cs5463_reset();
SpiInit();
SdiWrite(statue);
SdiWrite(config);
SdiWrite(count);
SdiWrite(mask);
SdiWrite(smode);
SdiWriteByte(start);
delay(100000);
SdoRead(read_count);
SdoRead(read_config);
SdoRead(read_temp);
SdoRead(read_dcvoff);
SdoRead(read_dcioff);
SdoRead(read_state);
}
读取函数如下
void cs5463_read_Vrms(unsigned char *p)
{
unsigned char vrms={0x18,0x00,0x00,0x00};
SdoRead(read_state);
while(read_state&0x80 != 0x80)
{
SdoRead(read_state);
}
SdoRead(vrms);
memcpy(p,vrms+1,3);
}
void cs5463_read_Irms(unsigned char *p)
{
unsigned char irms={0x16,0x00,0x00,0x00};
SdoRead(read_state);
while(read_state&0x80 != 0x80)
{
SdoRead(read_state);
}
SdoRead(irms);
memcpy(p,irms+1,3);
}
IRMS /0xFFFFFF *150/0.6;
VRMS /0xFFFFFF *150/0.6; 前提是必须要用150mvRMS 信号校准。
你的外围电路设计为 满量程信号为150mV RMS
具体如何转换与你电路有关,和是否校准有关 street 发表于 2014-8-22 11:15
IRMS /0xFFFFFF *150/0.6;
VRMS /0xFFFFFF *150/0.6; 前提是必须要用150mvRMS 信号校准。
我校准的时候, 150mv的AC信号是直接加在 芯片上的吗? 电流不用校准的吗? 加芯片上校准有什么意思,校准是为了把外围电路的误差校好,比如采样电阻的,互感器之类的误差。 本帖最后由 street 于 2014-8-22 15:05 编辑
ttsky138 发表于 2014-8-22 13:47
我校准的时候, 150mv的AC信号是直接加在 芯片上的吗? 电流不用校准的吗? ...
电压 电流 通道 使用的都是150mv的信号。
电流是通过互感器或是分流器,转换成了150mV信号。
电压是通过电压互感器或是分压器转转换成了150mV信号
最理想的校准方式是 给满量程信号进行校准,而不是给150mV信号校准
因为满量程信号校准,把互感器和采样电阻的误差都给消除了。
只给150mV信号校准,其中互感器和电阻的累计误差对精度有一定影响。
比如 你校准5A电流。需要给一个5A的标准信号,芯片通过互感器和电阻将5A转成150mV.进行校准。 street 发表于 2014-8-22 15:03
电压 电流 通道 使用的都是150mv的信号。
电流是通过互感器或是分流器,转换成了150mV信号。
你好, 我现在电压校准好了。
电流校准,用什么东西能产生一个稳定的5A 输出。 个人的话不太好弄 , 公司的话有 交流标准源,和交流恒流源。实在没办法 就用自耦变压器,调压,用环形变压器,绕1-2圈,直接短路 输出电流。不过稳定度差点。
小范围变动很正常。
你用5W,11W,60W的白炽灯,节能灯
因为 市电有波动的。 所以电流值肯定会跳动。
除非像楼上说的,用 交流标准源 street 发表于 2014-8-22 16:42
个人的话不太好弄 , 公司的话有 交流标准源,和交流恒流源。实在没办法 就用自耦变压器,调压,用环形 ...
调压, 我是通过调节 采样电阻的。在220V的时候,调节采样电阻,调节分压到150mv左右。调准。 去读偏移值。
在把采样电阻调节回来。Vmax = "R"*153重新计算 当前电阻下的Vmax。 测试220V的时候 是222,和电流表测出来的一样。
电流 我想用 22R的2200W的电阻。 最大Imax= 10A。 不知道有没有这种电阻。
10A的稳定阻性负载 , 找不到呀! ttsky138 发表于 2014-8-22 17:25
调压, 我是通过调节 采样电阻的。在220V的时候,调节采样电阻,调节分压到150mv左右。调准。 去读偏 ...
电阻 不好,功率太大,且发热量大 稳定度除收到电网影响外还收到电阻的发热量影响。(想想电炉就知道了)。
用自耦变压器加环形变压器。环形变压器的次级自己用1平方线绕2-3圈。短路即可输出10A左右电流,次级开口电压只有1V左右。功率降低不少,发热量会降低不少。而且电流数便于调节。
页:
[1]