基于MSP430F149的RLC、频率及相位差测量仪的设计
扫描二维码
随时随地手机看文章
摘要:给出了一种由单片机MSP430F149和部分外围电路来构成多参数测量仪的设计方案。详细介绍了测量RLC、频率及相位差的具体方法,同时给出了硬件电路和软件程序框图。
关键字:RLC;频率;相位差;测量仪;MSP430F149
0 引言
目前,要在实验室中完成对RLC、频率及相位差的测量,实际需要用几个仪表,如RLC表、频率计和相位仪,这给实际使用带来诸多不便。而且现在常用的仪表一般还是传统的模拟式仪表,漂移大,程控性能不好,而有些仪表功能过于单一,不能满足实际需求。为此,本文考虑到实际的科研实验需要,给出了一种可同时测量RLC、频率及相位差的测量仪的设计方法。
1 系统组成与硬件电路设计
1.1 系统组成
该仪器包括信号产生与接收模块、信号的放大整形滤波处理模块、单片机中央处理器、显示模块LCD12864和外部按键控制模块等几个部分,其系统组成结构框图如图1所示。
本系统以单片机MSP430F149为处理器,主要用于整个系统的信号采集、输入输出控制和数据处理。系统中的信号来源有两个:一是内部信号源产生的信号,二是由外部接口输入信号。这些信号先经放大整形电路进行处理,并由滤波电路滤波,之后送人到单片机,最后经单片机运算处理,并输出显示。
1.2 MSP430F149芯片简介
依据系统总体设计思路,该装置选用MSP430F149作为整个系统的控制中心,MSP430系列单片机是一种超低功耗的混合信号控制器,它具有16位RISC结构和丰富的寻址方式,同时集成了较丰富的片内外设。本系统就是利用其内部自带的12位ADC来实现模拟信号的采集,其最高转换速率可达382ksps,能满足大多数数据采集的应用要求;并且其内部具有16位的定时器,可利用其定时器A、B的捕获功能来捕获一定频率的方波信号,而且具有相当高的精度。同时,利用此功能还可以实现对输入信号的频率和周期的计算。
1.3 系统工作原理
对电容、电阻进行测量的基本原理是利用RC振荡,具体做法是用电容三点式振荡电路与555电路构成多谐振荡电路,并产生一定的频率,然后通过测量频率信号得出电容和电阻的信息。图2所示是其555振荡电路。
555的内部时基电路与电容C1及外接的电阻R1、R2构成的无稳态振荡电路的振荡频率范围可达0.001Hz~500kHz。当C1的电容量或电阻值R1、R2相应变化时,555电路输出的测量脉冲的宽度和频率也会发生变化。其中测量电阻时,可将R2替换为被测电阻,即R2=Rx,以使C1与R1处于一个一定的已知量值上,此时的输出频率计算公式为:
测量电容时,可将C1替换为被测电容,即C1=Cx,R1与R2设定为固定量值且相等,此时输出频率的计算公式为:
由于输出的频率变化与外部接入的量值成比。因此,在电路中只要正确地选择电阻的阻值与电容的容值,就可以得到适合测量所需要的脉冲宽度与脉冲频率。
电感测量主要利用电感的感抗原理。即将被测电感串联于一定频率的交流恒压源中,然后测量该电感两端的电压,从而得出电感的感抗,即间接测出电感的电感量,其电感测量电路如图3所示。
利用图3所示电路可由文氏电桥正弦波振荡器产生一定频率的正弦波,图3中由运放U8A及外围电阻和电容构成文氏电桥,其输出频率的理论值为f=1/(2πRC),在电源电压不变的条件下,该振荡器具有稳定的频率及振幅。且正弦波输出后,经电压跟随器驱动,即可作为电感表的信号源。信号源可输出到Rx(档位电阻)与Lx(被测电感)的串联电路中,此时电感产生的感抗为:ZL=2πfL。根据分压原理,在已知电压和已经选好已知值的Rx时,如果测出了电感两端的交流电压,由于电感感抗与电感量成正比,因而就可得出电感量。该交流电压经U8C运放与外围电阻组成的放大电路放大后,再经带通滤波器滤波,最后经线性整流器整形后即可转换为直流电压送入单片机。单片机经AD采样可得到该直流电压,再经计算得到电感量。
在电感测量时,根据量程的不同可分为5个档。将被测电感Lx接入电路中后,通过输入电压大小的判断,可由单片机向模拟开关发送控制信号以选择档位。
频率测量可利用单片机的捕获功能,外部输入的信号经过整形放大滤波分频等处理后,可将输出的方波信号送入单片机,图4所示是其频率测量电路。事实上,当一定频率的信号从IN端输入电路中时,经二极管限幅,再经RC滤波,然后送入到由LM358运放构成的比较器中,即可输出方波信号。该方波信号经74HC14整形,再经74HC393分频,最后可输入到单片机中。该测量电路中利用74HC393分频的目的在于,如果输入信号的频率过高,则单片机无法准确快速地捕获到该信号,因此,可通过分频减少高频信号的测量误差,同时提高测量的实际可行性。
相位差测量的基本原理是基于频率信号的测量。它可将不同相位的信号整形为方波信号送入单片机,这样就可将相位差的测量转变为求方波的脉宽,图5所示是其相位差测量电路。该电路将两路信号输入到电路接入端,再分别经限幅、滤波和整形处理,然后将得到的两路方波信号各自输入到单片机的两个捕获端口。
之后,在单片机中经过计算,即可得到脉宽以及周期,最终得到两个周期稳定的模拟输入信号之间的相位差。图6所示是其相位差波形图。
在图6中的两路相位不同的方波信号中,T1为信号1的上升沿到来时的时刻,T2为信号2上升沿到来时的时刻,如果可同时得到方波信号的周期T,则它们之间的相位差的理论计算公式为
这样,只需要得到这两路信号的上升沿时刻及其周期,便可计算出它们的相位差。
2 软件设计
2.1 主程序设计
本系统的主程序流程图如图7所示。本系统的主程序主要完成对时序的初始化及对显示界面的初始化,其中初始化包括对单片机的初始化和对接口芯片的初始化。首先是对单片机进行初始化,以设置时钟和必要的标志位以及变量初值;接着对显示器初始化,设置数据、地址传输端口;然后将按键选择程序开启,主要设置按键任务;最后对时钟A、B以及A/D转换进行初始化,设置必要的控制字和开中断。
2.2 定时器中断子程序设计
本系统的定时器A、B中断子程序如图8所示。在该系统中,定时器A、B主要用来捕获方波以及定时。当中断开启时,应先判断中断请求
寄存器TXIV的值,以判断该中断是由捕获引起还是由计数溢出引起,然后计算得到的频率值,并在预处理后返回到主程序中。
本系统中,对RC、频率以及相位差的测量都要利用单片机定时器的捕获功能来获取频率值。图9所示是频率捕获波形图。事实上,要获得方波信号的频率值,首先要在主程序中设置好时钟与定时器控制寄存器,然后开定时器中断程序。中断开启以后,定时器开始计数,当接收到方波的上升沿时,可存储该时刻的计数初值B,待下一次上升沿到来时,再存储该时刻的计数C,两次上升沿时刻之间的差值便是方波的周期。接着,经过短暂延时后重新测量,如此循环测量并计算最终结果。如果在两次上升沿捕获的过程中,计数器的计数值CCRx发生了溢出,则需要在中断程序中设置溢出次数变量Y,以在计算周期时将溢出值计算在内。每次捕获后得到的方波周期为:
3 结束语
本文利用MSP430单片机设计的RLC、频率及相位差的测量仪,经测试证明,各项指标均可达到设计要求,并且具有精度高、体积小、性能稳定和操作简便等特点。