压控振荡器
一.基本原理
信号的频率取决于输入信号电压的大小,因此称为“压控振荡器”。
其它影响压控振荡器输出信号的参数还VCO(Voltage ControlledOscillator)(压控振荡器)是指输出信号的频率随着输入信号幅度的变化而发生相应变化的设备,它的工作原理可以通过公式(5-1)来描述。
(5-1)
其中,u(t)表示输入信号,y(t)表示输出信号。
由于输入信号的频率取决与输入信号的电压的变化,因此称为“压控振荡器”。
其他影响压控振荡器输出信号
的参数还有信号的幅度A
c ,振荡频率f
c
,输入信号灵敏度k
c
,以及初始相位。
压控振荡器的特性用输出角频率ω0与输入控制电压uc之间的关系曲线(图1)来表示。
图中,uc为零时的角频率ω0,0称为自由振荡角频率;曲线在ω0,0处的斜率K0称为控制灵敏度。
使振荡器的工作状态或振荡回路的元件参数受输入控制电压的控制,就可构成一个压控振荡器。
在通信或测量仪器中,输入控制电压是欲传输或欲测量的信号(调制信号)。
人们通常把压控振荡器称为调频器,用以产生调频信号。
在自动频率控制环路和锁相环环路中,输入控制电压是误差信号电压,压控振荡器是环路中的一个受控部件。
压控振荡器的类型有LC压控振荡器、RC压控振荡器和晶体压控振荡器。
对压控振荡器的技术要求主要有:频率稳定度好,控制灵敏度高,调频范围宽,频偏与控制电压成线性关系并宜于集成等。
晶体压控振荡器的频率稳定度高,但调频范围窄,RC压控振荡器的频率稳定度低而调频范围宽,LC 压控振荡器居二者之间。
在MATLAB中压控振荡器有两种:离散时间压控振荡器和连续时间压控振荡器,这两种压控振荡器的差别在于,前者对输入信号采用离散方式进行积分,而后者则采用连续积分。
本书主要讨论连续时间压控振荡器。
为了理解压控振荡器输出信号的频率与输入信号幅度之间的关系,对公式(5-1)进行变换,取输出信号的相角Δ为
对输出信号的相角Δ求微分,得到输出信号的角频率ω和频率f分别为:
ω=2πf c+2πk c u(t) (5-3)
(5-4)
从式(5-4)中可以清楚地看到,压控振荡器输出信号的频率f与输入信号幅度u(t)成正比。
当输入信号u(t)等于0时,输出信号的频率f等于f c;当输入信号u(t)大于0时,输出信号的频率f高于f c;当输入信号u(t)小于0时,输出信号的频率f低于f c。
这样,通过改变输入信号的幅度大小就可以准确地控制输出信号的频率。
二.程序及结果分析
定义一个锯齿波信号,频率是20HZ,幅度范围在0V和1V之间。
现在用此信号
=20HZ,输入信号作为压控振荡器的输入控制信号,该压控振荡器的振荡频率f
c
灵敏度,初始相位。
使用MATLAB求得输出的压控振荡信号。
MATLAB 程序如下:
%MATLAB实现压控振荡器
clear all;
clc;
t0=0.15;%定义压控信号持续时间
ts=0.0001;%定义信号采样率
fc=50;%定义振荡频率
t=[0:ts:t0];%时间矢量
u0=20*t(1:length(t)/3);%定义压控信号(单周期)
u=[u0,u0,u0,0];%定义压控信号(3个周期)
Ac=1;%定义振幅
kc=0.1;%定义输入信号灵敏度
fi=0;%定义初始相位
%对压控信号进行积分
u_int(1)=0;%定义压控信号积分初值
for i=1:length(u)-1%进行离散积分
u_int(i+1)=u(i)+u_int(i);
end
%压控振荡信号
y=Ac*cos(2*pi*fc*t+2*pi*kc*u_int+fi);
%作图
subplot(2,1,1)%显示压控信号
plot(t,u)
axis([0t0-1.51.5])
title('控制信号')
subplot(2,1,2)%显示振荡信号
plot(t,y)
axis([0t0-1.51.5])
title('压控振荡信号')
设计结果如下所示:
三.模块及结果分析
定义一个锯齿波信号,频率是20HZ,幅度范围在0V和1V之间。
现在用此信号作为压控振荡器的输入控制信号,该压控振荡器的振荡频率f
=20HZ,输入信号
c
灵敏度,初始相位。
使用MATLAB求得输出的压控振荡信号。
总体框图设计结果如下:
RepeatingSequence(重复序列)模块:产生锯齿波信号。
该模块输出一个预先确定波形的标量信号,使用模块的Timevalues(时间值)和Outputvalues(输出值)这两个参数,便可得到任意的锯齿波波形。
RepeatingSequence(重复序列)模块的主要参数
参数名称参数值
Time values(时间值)[00.05]
Output values(输出值)[01]
压控振荡器:完成从直流电能到交流电能的转化。
其使用了变容二极管的LC谐振回路。
变容二极管的电容随着加在二极管上的直流控制电压变化而变化,改变直流控制电压就改变了变容二极管的电容,也就改变了谐振回路的振荡频率。
VCO(压控振荡器)模块的主要参数
参数名称参数值
Output amplitude(输出信号幅度)1
Oscillation frequency(振荡频率)20
Input sensitivity(输入信号灵敏度)0.1
Initial phase(rad)(初始相位)0
频谱仪:零阶采样和保持器:把前一采样时刻的采样值不增不减地保持到下一个采样时刻。
它的输出信号是阶梯形的,包含着高次谐波,与要恢复的连续信号是有区别的。
若将阶梯形输出信号的各中点连接起来,就可以得到一条比连续信号滞后T/2的曲线,这反映了零阶保持器的滞后特性。
它的幅值随角频率ω的增大而衰减,具有明显的低通滤波特性。
但除了主频谱外,还存在一些高频分量。
因此,其对应的连续信号与原来的信号是有差别的。
此外,采用零阶保持器还将产生相角迟后现象,这将降低系统的相对稳定性。
频谱仪:通过快速傅立叶变换把光依波长散开以形成光谱的仪器。
示波器:把肉眼看不见的电信号变换成看得见的图象,便于人们研究各种电现象的变化过程。
示波器利用狭窄的、由高速电子组成的电子束,打在涂有荧光物质的屏面上,就可产生细小的光点。
在被测信号的作用下,电子束就好像一支笔的笔尖,可以在屏面上描绘出被测信号的瞬时值的变化曲线。
利用示波器能观察各种不同信号幅度随时间变化的波形曲线,还可以用它测试各种不同的电量,如电压、电流、频率、相位差、调幅度等等。
四,总设计分析
该设计是为了实现压控振荡器的基本性能,其设计结果如图所示:
MATLAB程序运行结果
模块实际运行结果
对照程序和模块结果,可以发现在MATLAB中无论程序或模块都能实现压控振荡器基本性能的实现。