📄 vco.m
字号:
%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 = pi/4; %定义初始相位
%对压控信号进行积分
u_int(1) = 0; %定义压控信号积分初值
for i = 1:length(u)-1 %进行离散积分
u_int(i+1) = u(i)+u_int(i);
end
% nn=u_int(540)
%压控振荡信号
y = Ac*cos(2*pi*fc*t+2*pi*kc*u_int+fi);
% y = Ac*cos(2*pi*fc*t+2*pi*kc*u_int(i+1)+fi);
% nn= Ac*cos(2*pi*fc*t+2*pi*kc*u_int(10)+fi);
%作图
subplot(3,1,1) %显示压控信号
plot(t,u)
axis([0 t0 -1.5 1.5])
title('控制信号')
subplot(3,1,2) %显示振荡信号
plot(t,y)
axis([0 t0 -1.5 1.5])
title('压控振荡信号')
% subplot(3,1,3)
% plot(t,nn)
% axis([0 t0 -1.5 1.5])
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -