|
摘 要:介绍了交流采样的基本原理,提出了Intel80C196KC为核心处理单元来实现对电力电网的多路参数的智能测量,并给出了整个系统的软硬件设计方案。设计中采用外设事物服务器PTS来响应A/D转换,大大减少了A/D转换时间,从而提高CPU的效率。 关键词:交流采样,单片机,A/D转换
随着电力系统自动化水平的日益提高,电力参数的获取和管理变得越来越重要。微机技术在电力系统中的普及应用,使电力系统的测量和监控技术得到了快速发展。从品种繁多的传统仪表获取电力参数已不能满足系统的要求,研制高精度、多参数、多功能、数字化的模块化电力仪表已成为当今的一个热门课题。我们通过对多种实现方案的分析比较,又根据现场需求的特点,最后选择了以Intel80C196KC为核心处理单元的双CPU协同处理的硬件方案,以汇编语言和C语言混合编写软件,开发了一种新型的智能电力参数测试仪。
1 测试原理 交流采样是按一定规律对被测信号的瞬时值进行采样,再用一定的数值算法求得被测量的值,相对于经过直流整流后再进行采样测量的直流采样更精确。我们应用80C196KC为仪表智能核心部件,采用芯片内部A/D变换器作为数据采集器,对电信号进行逐点瞬间采样,再由单片机计算出电压、电流有效值,有功功率,视在功率,功率因数,信号频率等。 若将电压有效值公式离散化,以一个周期内有限个采样电压数字量来代替一个周期内的连续变化的电压函数值,计算式如式(1)。同时,电流有效值计算公式如式(2)。
 其中,N为一个周期内的采样点数。 功率的计算从连续周期信号有效值的定义和功率的定义出发,用数值积分近似代替连续积分。有功功率的计算公式如式(3)
 计算无功功率有多种算法,采用数字移相法微机计算量较小,数据处理实时性好。因为有功功率P和无功功率Q仅在电压和电流相位上差90°,所以将无功功率写成
 式中i(k+N/4)表示第(k+N/4)次的电流采样值(移相90°后的采样值),当(k+N/4)大于N时,(k+N/4)取为(k-3N/4)。 在三相四线制中用三表法,离散后求功率的表达式如下:
 在三相三线制中用两表法,离散化后求功率的公式如下:
 式中uuvk,uvwk分别表示1个周期内两个线电压的第k次采样值。 视在功率S及功率因数λ可以用以下公式求出:
 将有功功率和无功功率分别对时间积分就可以求出有功电能和无功电能。 2 硬件设计 硬件电路如图1所示,我们采用数据采集、通信显示双CPU技术,很好地解决了电力电网的实时监测问题。 16位单片机80C196KC主要完成数据采集和管理控制程序。80C196KC运算速度快,主频可运行到20MHz,用高速输入/输出(HSIO)结构进行事件控制,利用PTS来响应A/D变换过程,可大大缩短A/D变换时间,非常适合对电力参数的多变量实时监测。8位单片机AT89C2051完成通讯、显示和键盘功能,减轻了数据采集芯片的负担。 2.1 数据采集单元 为了降低成本,大信号的三相电流使用电流互感器得到交流小信号(小于±5V),而大信号的三相电压则用隔直电路隔掉直流,经过电阻分压得到交流小信号。考虑到电流输入的动态范围大,选用准确度合适的霍尔电流/电压互感器、跟随器及用高精度运放构建的I/U变换电路。三相交流电流经过电流互感器,再经过I/U变换电路,变换为低幅值的交流电压信号。为防止电网信号的混叠效应及高频干扰,对变送出来的交流信号要经过低通滤波。采用五阶巴特沃斯滤波器及阻容元件构成。 2.2 跟踪频率单元 使用离散算法必须满足每周波的N个采样点是均匀分布在每个工频周期内。通常采样频率多是通过设置CPU定时器分频系数来完成的,采样频率因而是固定的。但电力系统的频率是有变化的,因此,按照固定的采样频率采集的数据,计算结果也必然会出现误差,有可能引起测量精度的下降或自动装置的误动作。

我们考虑到电力工频变化不是很快,为提高测量精度,在正式采样之前先测得电力工频前一周期对应的计数值Tc,然后实时计算出来样周期Ts=Tc/N,即可实现采样频率对电力工频的实时跟踪。电力工频采样电路图如图2所示。采样电压和电流经过降压隔离、低通滤波,由零比较器整形成方波,经光耦送到80C196KC的高速输入接口HSI.1和HSI.2,利用方波的上升沿触发高速输穰断HIS-MODE,测得Tc。经过单片机的分析计算得到采样间隔时间Ts,以此设置80C196内的软件定时器中断,在软件定时器中断中进行数据采集和A/D转换的控制,完成采样频率的实时跟踪。

2.3 外部通信接口单元 由RS-485接口电路、高速光隔电路和RS-485控制电路组成。可以将测量数据上传到上位机(PC机),也可由上位机经串口下传设定系统参数。下位机(测试仪)与上位机之间的数据传送经过RS485收发器MAX485实现远距离通信(可达1200m),通信方式为半双工,满足ModBUS通信规约。为了提高数据传输的抗干扰性,MAX485为+5V单独供电,采用高速光耦6N136与其它电源完全隔离,不共地。 2.4 键盘及显示单元 键盘采用双键按钮,直接接到单片机P3口的 ,利用其接受外部中断的能力完成键盘管理。显示器采用4位×3共阴极LED,另带指示灯配合显示电力参数。 3 软件设计 在系统的软件设计中,采用模块化设计方法,使得程序结构清晰,便于今后进一步扩展系统的功能。系统软件由以下模块构成:80C196部分:主程序、定时器中断服务程序、数据采集处理子程序等;89C51部分:键盘中断服务程序、显示程序、通讯程序等。80C196主程序的流程图如(3)。限于篇幅,仅给出A/D变换启动的设计思路。 80C196KC单片机的外设事务服务器PTS对中断提供了一种类似于DMA(直接存储器仿问)的响应,但CPU的开销比一般中断要少得多。PTS的服务方式和一般中断相类似,但它的优先级比一般中断高。它有一个向量表,位于2040H-205CH,每个PTS向量指向一个PTS控制块(PTSCB)。PTS的A/D模式利用内部A/D转换结束中断,自动地再启动A/D,进行连续采样。这种方式用于高频率采样,可以使CPU有更多时间用于计算处理。
PTSCB包括AD-RESULT寄存器、A/D转换和结果表、控制寄存器(PTSCON)和A/D转换记数(PTSCOUNT)。一旦进入PTS通道,就可由PTS向量获取PTS控制块的地址,根据PTSCB的内容可以自动再次启动A/D变换,并把上一次的变换结果存放在源/目的寄存器S/D指向的存储器内的表格中。PTSCON命令字设置见表1。

M2=1,M1=1,M0=0时定义为PTS的A/D模式,UPDT为0时S/D恢复为初始值,为1时保留当前结果。对ACH0至ACH3四个通道各采样一次,PTS源地址定位在S/D中,设为4000H。A/D命令/数据表设置见表2。

主程序完成ACH0的采样,当这第一个A/D转换完成并产生完成中断后,PTSCB中断矢量启动A/D服务程序,PTS存储转换结果,装卸一个新的命令至AD-COMMAND(02H)中,然后将PTSCOUNT记数减1。在最后一个PTS周期,因下一次不再需要A/D变换,所以将空命令(0000H)装入AD-COMMAND。如此顺序完成对ACH1、ACH2、ACH3的采样,PTS记数减为0产生一个end-of-PTS中断。由于AD-RE-SULT寄存器中低6位为状态信息,所以在end-of-PTS中断服务程序中右移结果数据6次,得到真正的数据。在中断服务程序中重新使能PTS的A/D模式,就可以实现四路信号的循环采样。 4 结语 本智能型电参数测试仪基于80C196KC快速可靠的数据采集和双CPU协同通信技术,实现了电网电量的实时远程测量与本地显示,能够广泛应用于配电网自动化、小区电力监控和工业现场测试等领域,有良好的推广价值。
参考文献
1 函涵芳.Intel16位单片机.北京:北京航空航天大学出版社,1995 2 程军.Intel80C196单片机应用实践与C语言开发.北京:北京航空航天大学出版社,2000 3 赵新民,王祁.智能仪器设计基础.哈尔滨:哈尔滨工业大学出版社,1999
|