当前位置:首页 > 低频数字式相位测量仪(C题)
低频数字式相位测量仪(C
题)
作者 :杨友伦 陈伟达 杨丽(西华师范大学) 赛前及文稿整理指导教师:陈元莉 闫正洲
摘 要
本系统以单片机为中心,运用单片机最小系统模块、LED显示器、过零比较电路、移相电路等,辅以必要的模拟电路,构成了一个用单片机实现的低频相位测量系统。实现的功能主要有两个:一是产生两个有相位差的输入波形,并是将正弦波转换成矩形方波输入;二是通过单片机控制测量输入波形的频率以及相位差。本系统的特点是结构简单,易于实现。
一、 方案设计与论证
方案一:
1、
频率的测量:将波形发生器的输出波形送到单片机的定时/计数器,其中 T0采用计数方式,T1采用定时方式(定时时间为50ms),根据公式
T=
总时间
脉冲个数 ?=1/T
算出输出方波的周期T以及频率?.
2、
相位差的测量:
方案二:
1、
频率的测量:利用8031的中断方式,将波形输入INT0。对T0采用定时方式。使
GATE=1.当下降沿到来时,执“SETB TR0” ,使TR0=1;当波形跳变为上升沿时,开始计数。一旦波形跳变为下降沿 (1/2个脉冲之后),计数停止,参考方案一,先求出T,设输入波形周期为T′,由
T′= 2T
即可求出脉冲频率?。
2、
相位差的测量: 将得到的两个输出波形T0、T1分别接入单片机的INT0、INT1
当T0、T1均为低电平时,GATE=1,系统执“SETB TR0” ,使TR0=1;计数器不计数。设T1超前T2。对于T1,当它的第一个上升沿到来时,计数器开始计数,同时系统自动检测P3.3,当检测到T2的第一个上升沿到来时系统计数停止,得到相应的计数
并求出待求相位差φ。
经过比较,我们认为第二种方案比较容易实现而且电路要相对简单些,故本系统采用第二种方案。
二、 系统设计
系统框架原理图如图所示
单 LED 显示器 T0输入 数字式移相信号发 片 生 器 T1输入 机
图1 系统框架图 工作原理: 波形转换器:
系统通过一个过零比较器,将输入得到的两路正弦波形转换成矩形方波我们将这两个方波脉冲通过一个转换电路转换成正弦波,就可将脉冲上升、下降沿的延时转换成正弦波的相位差,通过单片机控制计算出方波的频率与延时差,从而求出输入正弦波的频率与相位差。这样使得计算更加容易实现。 移相网络:
移相网络电路图
移相网络
A ′输入
B ′输入
图2 移相网络
两路移相信号发生器:
该发生器是以单片机8031为核心构成的最小系统。8031采用分时工作方式(由ALE信号控制)。前半周P0口(P0.0~P0.7)输出地址线低八位至地址锁存器IC2(74LS373)进行地址锁存,然后再输至EPROM存储器2716的地址线低八位已足够了,所以8031的高
八位地址线P2口(P2.0~P2.7)可以空出不接,而2761的高位地址线(A8~A10)均接地,这样可以简化线路。后半周,P0口作数据线使用,8031以2761内获取指令,进行取指令等操作,2761由PSEN信号选通。
8031的P1口(P1.0~P1.7)8个脚都单独具有输出锁存功能,且互不干扰,故可用作两路信号输出。
为了使输出信号的频率能在一定范围内变动,8031采用外部时钟源驱动方式,由六反相器IC4(74S04)中的两个反相器与电阻R、电位器W、电容C构成方波振荡器,其振荡频率(时钟频率)φ=[1/2.2(W+R)] ×C。改变W的值,即可改变时钟频率。时钟频率的变化范围为1.2~12MHz。
P1.0、P1.1输出两个频率一样的脉冲,通过调整,使得T0、T1有一定的相位差。
各路输出预置电平
第一路取反输出 延时N1 第二路取反输出 延时N2 图4 延时程序流程图
图3为两相信号相位图,图4为程序流程图。输出为标准的对称方波,方波A由P1.0脚输出,方波B由P1.1脚输出。
它的软件非常简单,只有14条指令,当从LOOP0运行一遍后又回到LOOP0,即完成了前半周(0~180°)的输出。再重复一遍,就完成了后半周(180°~360°)的输出。也就是说,每运行两遍便完成了一个周期。各个方波被正负半周的 变换是通过取反指令CPL来实现的。
程序在运行每条指令时都耗费一定的时间,而本程序正是利用这一时间来形成各路之间的相移,特别是DJNZ指令多次的自循环,构成了延时的主体。自循环次数决定了输出信号频率的高低,自循环次数越多,程序循环也越快,输出信号的频率也越高;反之,则越低。
本电路还有一个优点,当想改变输出的路数及相位差时,只须在软件上作相应的改动,而电路不动。这对于一般的电子线路是不可能的。
2、 实现方法:
本系统的软件流程如图5所示
测量频率:
利用8031的中断方式,将波形输入INT0。对T0采用定时方式。使GATE=1.当下降沿到来时,执“SETB TR0” ,使TR0=1;当波形跳变为上升沿时,开始计数。一旦波形跳变为下降沿 (1/2个脉冲之后),计数停止,得到计数值N1,设频率为?,调用三字除以双字子程序计算得
?=
1
N1?2?T06?106 =
N1?24 =测频子程序如图6所示
3D090H N1
共分享92篇相关文档