nbsp;
3CPLD内部电路实现
本设计的软件是在MAX+plusII10.2下完成的,顶层文件是*.gdf图形文件,低层用AHDL硬件描述语言来描述。
3.1测频模块 测频模块的主要作用是:①测量电网频率;②确定分频系数,产生跟随频率变化的同步脉冲。测频原理:由于测量的频率在50Hz左右,采用脉宽测量方式,即首先对被测信号进行2分频,使信号的正负脉宽相等,然后利用正脉宽对50MHz的标准脉冲进行计数。正脉宽上升沿来时,计数器开始对标准脉冲计数;下降沿来时,锁存当前的计数值Con。通过以下关系确定频率f、分频系数N。

分频系数为:系统时钟源频率与分频得到脉冲频率(256*f)的比值的一半再减去1,即:
3.2S/H时序控制模块
由于采用的是同相电压、电流同
步采样技术,所以对S/H的控制时序要求严格。同步采集某相电压电流1次的时间≤71.02μs。同相电压、电流间要求是同时保持,分时采样。由于ADC582的捕捉时间约为6μs,所以S/H时序脉冲低电平应至少为10μs,在此期间,采样保持器处于跟踪状态;高电平为60μs,在高电平期间,采样保持器处于保持状态。前30μs对电压信号进行AD转换并存储;后30μs对电流信号进行AD转换并存储。仿真波形如图2。
3.3多路开关MAX382的地址产生及ADC控制模块
在AD582控制脉冲一个周期的高电平期间,要采集电压、电流各1次,所以多路开关MAX382需要选通2次,AD芯片MAX172也需要启动2次。第1次MAX382选通起始于AD582控制脉冲上升沿来临以后的1μs时刻;第2次起始于中间31μs处,延时1μs。这是因为采样保持器的输出还有一段波动,经过一定时间tST才保持稳定,为了量化的准确,所以在保持指令发出后,延时1μs。AD启动脉冲开始于AD582控制脉冲2μs、32μs处,也延时1μs。MAX172的控制端有:CS,HEN,RD;转换结束状态线:BUSY。当CS=0,RD=0,BUSY=0时,AD正在转换;BUSY=1时,转换结束;HEN=1,读转换结果的高4位数据,HEN=0时,读转换结果的低8位数据。该模块要结合硬件来仿真。MAX172的控制时序图如图3。

3.4双口RAM地址发生器及读写控制模块
ACEX1K100器件内嵌EAB单元,可构成容量大约为6KB的双口RAM,由于MAX172是12位AD,而MCS-51的数据总线只有8位,所以,需要把1次采样的数据分成2个字节,分别存储。因为电压、电流分时交替转换,所以,在地址发生器中要有一个确定的映射规则,调整其存储地址,以使电压、电流在双口RAM中分块顺序存储。另外,在双口RAM中,当对同一地址单元同时进行读写时,要有一个仲裁机制,对其进行控制;当读写发生冲突时,我们约定:CPLD写双口RAM具有优先权,只有当写操作结束后,MCS-51单片机才被允许读该单元。该模块的仿真波形见图4。
3.5通信模块
该模块是在CPLD内部构建一个串行发送电路端口,实现MCS-51单片机与CPLD器件之间的通信功能。(1)在正常工作模式下,频率、同步脉冲的分频系数等重要数据需要通信。(2)在系统升级模式下,单片机发送控制数据给CPLD实现升级。通信方式为串行单工通信,MCS-51单片机发送数据,CPLD接受数据。通信波特率约定为9600bps,通信的帧结构:1帧10位数据,1位起始位(低电平),8位数据位,低位在前;1位停止位(高电平)。帧与帧之间有3位空闲位(高电平)以确保通信正确。
4结论
在电力谐波分析仪的设计中,CPLD的应用使采样的速率大大