基于80C196的频率测量及在电压采样中的应用
扫描二维码
随时随地手机看文章
频率和电压是电力系统中的两个重要电气量。提出了一种基于80C196单片机HSI的频率测量方法,并依据测量的频率来改变电压的采样时间间隔,实现频率跟踪功能。该方法频率测量精度高,实行频率跟踪采样,提高了电压计算精度。
关键词:电力系统,80C196,频率测量,频率跟踪,电压计算
1 引 言
在电力系统中,电压和频率是反应电力系统电能质量的两个重要参数。同时,在继电保护行业,电压和频率也是继电保护、测控、同期合闸等装置进行相应动作的重要判据。
电力系统中,一般为了节省测频回路,频率的测量传统上都是利用电压的采样瞬时值来计算频率〔2〕〔3〕,这种方法由于采样精度和谐波的原因,虽然采用了各种补偿措施,实际测量精度仍然不能满足像自动准同期等以频率或频差作为动作判据的装置的要求。电压的计算,传统上一般采用傅立叶算法。傅立叶算法有着把基波及各次谐波分量分离的优点,可以得到各分量的大小,从而得到了广泛的应用。但是这种算法中相关系数固定,当被测信号频率变化时,会带来较大的测量误差。对于这种情况,有采用锁相倍频采样触发电路〔4〕〔5〕的方法,来保证每一信号周期内获取相同的采样点数,提高计算精度,但同时,这种专门的锁相倍频采样触发电路增加了设计成本和调试难度。
本文提出了一种利用80C196的HIS(High SpeedInput,高速输入)对信号进行频率测量的方法,测量精度高,通过测得的频率相应地改变电压采样频率,实现频率跟踪,很好地提高电压计算精度。这种方法既简化了电路设计,又在得到高精度频率测量的同时提高了电压计算精度。
2 硬件设计
2.1 硬件构成
电力系统中,三相电压频率是一样的,任选其中一相作为频率测量的信号。硬件结构如图1所示。
测频信号需要实行滤波和整形电路。滤波是为了滤除谐波和纹波,为整形提供较好的检测信号。整形电路将滤波后的正弦信号转换为方波信号。电压测量不需要滤波,以便保留更多的波形信息。
2.2 滤波整形电路
因为测量频率只需要周期信号,而无需相位信息,所以,整形电路无须过零检测,考虑到这一点,整形电路实现就比较方便。实际设计中,为了简化电路,滤波电路与整形电路功能采用一片集成芯片MC1489来完成。MC1489是单片集成四路电平转换器,其中每一路都可实现整形功能,外加电容起到滤波的作用。电路如图2所示。
3 软件实现
3.1 测频原理及误差分析
用HSI事件实现测频,实际上是测量周期的方法,对于80C196单片机来说,即,在触发的时间内,每8个晶振周期对信号周期的计数。当晶体振荡频率为20 MHz时,内部晶振周期为0.1μs(因为内部经过了2分频),每0.8μs计数一次。从这可以看出,测量绝对最大误差为信号前后边界共1.6μs,对于周期为20 ms的50 Hz的信号,最大误差折算到频率约为0.004 Hz,所以,频率测量精度可达到0.01 Hz。当晶体振荡频率越高或被测信号周期越长时,相对误差就越小。
3.2 频率测量的实现思路
HSI事件可以采用中断方式和查询方式读取,因为测频的同时要改变采样中断间隔,在采样中断中以查询方式实现更为方便简洁。
查询方式下,HSI事件主要依靠配置或读取寄存器IOC0、HSI MODE、IOS1、HSI STATUS以及HSI TIME的内容来实现。IOC0用于事件引脚选择。由HSI引脚输入的外部事件有四种触发方式,分别为负跳变触发、正跳变触发、正负跳变触发、每8个正跳变触发,各触发方式通过HSI MODE来设置。IOS1记录了有HSI部件保存寄存器数据是否有效的信息。HSI STATUS存放每个输入引脚的两种信息,一是说明该引脚是否有事件发生,二是记录当前该引脚电平状态。HSI TIME存放的是保持寄存器所存事件的时间值〔1〕。
假定HSI只用到HSI.0。初始化时,设置IOC0为01H,选择HSI.0为事件输入引脚。设定HSI MODE寄存器为01H,即,每个正跳变为一个事件的触发方式。在采样中断中读取时间值,先查询IOS1.7,若该位为1,则表明保持寄存器已加载,可对HSI的事件予以读取。读取HSI STATUS和HSI TIME两个寄存器,进行处理。
3.3 频率的计算及采样跟踪
此处为了阐述明了起见,给出频率测量及频率跟踪程序源代码,该程序增加了防止测频回路出错而导致采样错误的功能。
其中,t—freq、tcy、tcy+2、ltcy、iosl—map、freq—err、freq为定义的80C196的通用寄存器,SH—Point,Tcy—Normal为规定的常数,分别为一周内采样点数和50Hz时HSI正常计数值。t—freq为频率测量计数,代表着在触发时间内HIS的实际计数值。应用中可以依据不同的测量精度要求,以不同的数值除以该计数,以获得频率的数值。对于50 Hz的信号,在一个周期内计数理论上为25 000,以125 000000(Constant freqhl)除以该值,即可得到测量精度为0.01Hz的频率测量的定点运算值freq(如上面的程序所示)。
4 跟踪能力分析
从上面的频率跟踪实现过程来看,当信号频率稳定在某一频率时,只要经过信号的一个周期时间,HSI就产生数据有效事件,采样频率就能跟踪上信号频率,从而提高电压计算精度。
对于以一定的滑差变化频率的信号,这里存在采样跟踪的实时性问题。从试验可以知道,在不实行频率跟踪的情况下,当信号频率与50 Hz基准频率的偏差小于0.5 Hz时,电压计算精度依然较高,能够满足各装置的行为需要。为增加计算冗余,可以以0.3 Hz为限。因为本算法频率跟踪为信号一周就跟踪一次,对于电力系统,即,约20 ms跟踪一次,所以,只要滑差小于0.3Hz/20ms=15Hz/s时,电压采样就能跟踪信号频率而不影响计算精度。而实际上,在电力系统中15Hz/s的频率滑差根本是不存在的。所以,本算法是切实可行的。
5 实施频率跟踪对电压计算的影响及结论
作者采用80C196、12位A/D的单片机系统,编程实现了对50 Hz、100 V的电压信号进行每周12点采样计算的模拟试验,当信号频率与50 Hz偏差较大时,采用采样频率跟踪信号频率比不采用该方法时的电压计算具有更高的精度。通过观察实时显示数据,频率在55 Hz时两者计算比较示意图如图3所示。
另外,对于频率以一定的滑差连续变化的信号,因为采样频率有实时跟踪功能,电压计算依然有着较高的精度。
本文提出的这种频率测量方法,软硬件实现简单,测量精度高。采样频率跟踪信号频率,使得采样值更好地适合傅立叶算法,从而提高了电压计算精度。适合于电力系统中各继电保护装置中高精度的频率和电压测量。