ADuC812在三相电能测量系统中的应用
出处:linqing171 发布于:2007-05-27 13:03:02
1 ADuC812简介
ADuC812是全集成的高性能的12位数据采集系统,他在单个芯片内集成了8通道、12位能自校准ADC和2个12位DAC与8051兼容的MCU。
ADuC812片内带有8kB的闪速/电擦除(Flash/EE)程序存储器、640B的闪速/电擦除数据存储器以及256B的SRAM,还能外接多16MB的外部数据存储器和多64kB的外部程序存储器。A/D转换的速度可以达到200kb/s(12MHz晶振)。ADuC812自带2.5V电压基准;8通道高12bADC,2个12b电压输出DAC。在外围接口上面,ADuC812带有32条可编程的I/O线,包括UART串行口I/O,IZC兼容口SPI串行I/O。控制转换器的静态CPU标准、等待和掉电模式等特性,可用于低功耗的应用场合,该芯片采用52脚扁平四方形塑封(DQFP)。
ADuC812区别于51系列单片机的一个显著特征就是能加载程序代码给片内在线可编程闪速/电擦除程序存储器。这种在线代码加载利用UART串行口实现。串行加载允许用户对在线连接的目标系统重新编程,因而不必使用其他的外部编程器。我们利用QuickStart开发系统工具,就可以通过串口从上位机直接把程序代码写入ADuC812的程序存储器中,实现在系统编程,加快开发进程。
2 系统硬件设计
采用ADuC812设计的三相电能测量系统硬件框图如图1所示。在此电能测量系统中,ADuC812内部转换器接受的模拟电压的输入范围为0~十VREF,故需设计6路直流电平调整电路,将满度220V电压,5A电流对应地转换为0.8VREF,这样和标准表进行比对时就可以达到满度120%的要求。利用ADuC812内部12bADC分别对电压、电流进行采样,将输入信号锁相倍频4倍作为A/D转换启动信号,以保证每周波采样4点。实时计算电压U、电流/和功率户并计算电能U/的累加值,每当电能值累加0.01 kW时通过P3.4口送出一个脉冲,以作校验使用。电能值掉电时保存在ADuC812内部闪速/电擦除数据存储器中,作为下次开机电能累加的初始值。
由于ADuC812内只有一个A/D转换器,故对6路信号的采样要通过内部的模拟开关进行切换。为保证信号采集的实时性,对6路信号的转换是这样实现的:第1路信号由锁相倍频电路输人23管脚CONVST启动ADC转换,另外5路信号的ADC转换由ADuC812内部定时器2的溢出位用作起始触发脉冲输入依次启动,并尽量提高采样频率(采用10kHz),让信号间的延时。
3 电力参数的算法
在该三相电能测量系统中,采用ADuC812作CPU,将电网频率4倍频,以确保每周波采样4点,并实时计算每周波内各相电压有效值U,电流有效值I,三相总有功以及各相有功功率值P、无功功率Q、功率因数COSφ和电能W。其各项计算公式见式(1)~式(6)。总的有功功率、无功功率和电能值为三相的总和。对于功率因数,为了方便软件编程的实现,利用式(6)进行计算。式中N为每周波的采样点数,u,i为AD采集的电压、电流的瞬时值。
4 系统软件设计
系统软件要完成对采集数据的处理和各电力参数的计算,并将结果送数码管显示。包括主程序、ADC中断服务子程序,程序用C语言编写,大大提高了开发效率。
主程序流程图如图2所示。首先进行初始化,包括关中断、定义变量和常数、对各变量置初始值、设置外部中断1和外部管脚起动AD模式。完成初始化工作后,读出上次开机运行记录的电能值,开中断。每采完5周波,将电压、电流乘积的累加和进行滤波,滤波后的电能值乘以系数尺,每当电能值累加0.01kW时,从I/O口(P3.4)送出一个脉冲;根据式(1)~式(6),分别计算出电压、电流有效值、有功、无功、功率因数以及电能各参数,并响应按键,选择参数送数码管显示。
ADC中断服务子程序流程图如图3所示。在中断服务程序完成如下工作:首先关中断,读取AD转换值存入内部数据区,判断是否对6路信号各采完一个点,巳完成则送出6个数据到外部数据区保存;然后进人通道选择,进行模拟开关的切换,之后开中断并返回。
系统软件的设计还有一个重要的任务就是要在断电的时候将电能值保存到片内闪速/电擦除数据存储器中。我们利用了电源监视器中断,断电时产生并进人中断,在中断程序中将电能值写入片内闪速/电擦除数据存储器保存。由于ADuC812片内闪速/电擦除数据存储器必须按字节编程,而保存的电能值为float型,需占4B,所以根据float型数据的存储格式将电能值对应保存在闪速/电擦除数据存储器一页的4B内,在主程序中相应地把闪速/电擦除数据存储器的数据还原为电能值。程序代码如下:
void power_lose() interrupt 8 //中断向量
{
EADRL=0x01; //置页指针
ECON=Ox05; //擦除
pu2=&energy_sum;
//电能值保存于float型变量energy_sum中
for(m=0;m<4;m++)
{
energy_split[m]=*pu2;
pu2++;
}
EDATAl=energy_split[0];
EDATA2=energy_split[1];
EDATA3=energy_split[2];
EDATA4=energy-split[3];
EADRL=0x01; //置页指针
ECON=0x02; //写入
while(1);
5 结果与讨论
通过多次测试,我们发现这一电能测量系统能达到预定的实时采样要求,能对每周波倍频采样,并能实时计算显示各电力参数,而且具有良好的稳定性和可靠性。我们采用JWD-3型数控校表源作为输入信号源,与EWH3005MC标准功率电能表(0.1级)进行比对,测试结果表明该三相电能测量系统能达到5‰的高(见表1),且仪器成本低、功能强、功耗低。因此,预计其市场前景非常广阔。
版权与免责声明
凡本网注明“出处:维库电子市场网”的所有作品,版权均属于维库电子市场网,转载请必须注明维库电子市场网,https://www.dzsc.com,违反者本网将追究相关法律责任。
本网转载并注明自其它出处的作品,目的在于传递更多信息,并不代表本网赞同其观点或证实其内容的真实性,不承担此类作品侵权行为的直接责任及连带责任。其他媒体、网站或个人从本网转载时,必须保留本网注明的作品出处,并自负版权等法律责任。
如涉及作品内容、版权等问题,请在作品发表之日起一周内与本网联系,否则视为放弃相关权利。
- Keysight - 是德科技联合 ETS Lindgren 推出创新 NB-NTN OTA 测试解决方案2024/4/25 15:59:02
- 三坐标测量仪使用步骤及注意事项2024/4/11 17:54:47
- 如何提高接地电阻2024/4/11 16:38:47
- 电流互感器的操作、类型和极性注意事项2024/4/2 17:11:19
- 如何识别变压器引线2024/3/29 17:13:57