以MATLAB为基础简单模拟【基于负反馈的正弦波发生电路】的波形发生过程

一、正弦波产生原理

1、选频网络

选频网络采用的是文氏桥,一对阻容串联、一对阻容并联,二者再串联。

  • 当信号的频率较的时候,电容的容抗远远大于电阻的阻抗,此时:

     串联的阻容中,对外表现为是一个电容
     并联的阻容中,对外表现为是一个电阻
    

输出电压和反馈电压之间将会产生相位差

  • 当信号的频率较的时候,电容的容抗远远小于电阻的阻抗,此时:

     串联的阻容中,对外表现为是一个电阻
     并联的阻容中,对外表现为是一个电容
    

输出电压和反馈电压之间同样会产生相位差

只有当信号的频率等于选频网络的频率的时候,信号才可以无相移地通过选聘网络。
在这里插入图片描述

2、产生正弦波的过程

电路接通电源时,会产生丰富的信号(极其微弱),当其中某个频率的微小信号与选频网络的频率一致时,它经过选频网络就不会发生相移,而其他频率的信号经过选频网络都会发生不同程度的相移。

信号还会经过放大电路的放大环节,起振阶段的放大倍数应该略大于3。
在这里插入图片描述

3、模拟

利用MATLAB进行模拟。

假设电路产生了一个微小的电信号,它具有一定的幅值,它经过反馈网络(会有一个反馈系数)之后,在经过放大电路(因为模拟的是起振环节,所以应该略大于3,为了效果明显一点我取了A=4),放大电路输出再进入反馈网络,形成闭环。


模拟的波形如下:
微小信号的幅值为0.01V,

当其频率匹配时,模拟将达到2V的幅值
当其频率不匹配的时候,模拟的幅值仅为0.06V

在这里插入图片描述
实际的情况肯定比模拟的更复杂,微小信号可能更“微小”,反馈放大的次数也更多,信号的频率也更加丰富。

但是大致的趋势就是:一个频率的信号逐渐突出(针对起振环节)。

附代码

clc                                                 % 清除命令行
clear                                               % 清除变量
clf                                                 % 清除图像
TIME = 10*pi;                                       % 时间区间上限
t = 0:0.1:TIME;                                     % 时间区间

fai = 0;                                            % 初相位 
A = 4;                                              % 放大电路放大倍数(起振,所以大于3)
F = 1/3;                                            % 反馈系数
c=colormap(lines(10));                              % 改变曲线颜色的数组

        % 1、当信号刚好是选频网络的f0
Y = 0.01 * sin(2*t+fai);                            % 模拟电扰动中一个频率的微小信号
        % 循环计算输入输出
for i = 1:10                                        % 表示循环变量为i,i从1增加到10,步长为1
    yin = 0.01*sin(2*t+fai)*(A^(i-1))*(F^(i-1));    % 是单次输入也是反馈量
    yout = A * yin;                                 % 单次输出 = 放大倍数 x 输入
    Y = Y + yout;                                   % 输出叠加
    subplot(2,1,1);plot(t,yout,'color',c(i,:));     % 绘制单次输出的图像
    hold on                                         % 保持绘图界面不关闭,在一个图内绘制多条曲线
end
subplot(2,1,1);plot(t,Y,'r-.');                     % 绘制叠加之后的输出
xlim([0,TIME]);                                     % 限制横坐标的显示范围
title('1、当信号刚好是选频网络的f0、A = 4、F = 1/3'); % 图表标题
xlabel('t'),ylabel('y = sin(2t)') 

        % 2、当信号不是选频网络的f0
F = 1/6;                                            % 反馈系数,因为频率偏移故有所下降
Y = 0.01 * sin(4*t+fai);                            % 模拟电扰动中另一个频率的微小信号
        % 循环计算输入输出
for i = 1:10                                        % 表示循环变量为i,i从1增加到10,步长为-3
    fai = (i-1) * pi /4;                            % 相位经过选频网络发生的偏移
    yin = 0.01*sin(4*t+fai)*(A^(i-1))*(F^(i-1));    % 是单词输入也是反馈量
    yout = A * yin;                                 % 单次输出 = 放大倍数 x 输入
    Y = Y + yout;                                   % 输出叠加
    subplot(2,1,2);plot(t,yout,'color',c(i,:));     % 绘制单次输出的图像
    hold on                                         % 保持绘图界面不关闭,在一个图内绘制多条曲线
end
subplot(2,1,2);plot(t,Y,'r-.');                     % 绘制叠加之后的输出
xlim([0,TIME]);                                     % 限制横坐标的显示范围
title('2、当信号不是选频网络的f0、A = 4、F = 1/6');   % 图表标题
xlabel('t'),ylabel('y = sin(4t)') 

grid on;                                            % 打开坐标网格
shg                                                 % 使Figure窗口移动到最前
  • 1
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 打赏
    打赏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

童话与云

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值