电容三点式振荡电路详解及Multisim实例仿真
电容三点式振荡器也称考毕兹(Colpitts,也叫科耳皮兹)振荡器,是三极管自激LC振荡器的一种,因振荡回路中两个串联电容的三个端分别与三极管的三个极相接而得名,适合于高频振荡输出的电路形式之一。
电容三点式振荡电路有多种具体形式,其最核心也是最基本的原理都是一样的,如下图所示:
从上图可以看出,电容三点式LC正弦波振荡电路的重要特性是:与三极管发射极相连的两个电抗元件为相同性质的电抗元件,而与三极管集电极(或基极)相连接的电抗元件是相反性质的。如果合理设置电路参数使其满足起振条件,则电路将开始振荡,如果忽略分布电容、三极管参数等因素,此电路的振荡频率f0如下式:
之所有是约等于,是因为忽略了三极管的寄生极间电容,后面会提到,此电路的LC谐振回路中的电容C1与C2是串联的,如下图所示:
如下图所示为基本的电容三点式振荡电路:
上图中的电容C1、C2与电感L组成谐振回路,作为三极管放大器的负载,电容C3与C4作为耦合电容,其直流通路如下:
其实就是带基极偏压的共发射极放大电路,具体静态工作点的计算可以参考相应文章《带基极分压式的基本共射极放大电路》。对于一个具体的振荡电路,振幅的增大主要依赖于三极管的集电极静态电流,此值如果设置太大,则三极管容易进入饱和导致振荡波形失真,甚至振荡电路停振,一般取值范围为1mA~4mA
其交流通路如下图所示:
从图上可以看出,基极输入(假设有输入)经过三极管放大后的输出电压uo,再经过电容C2与C1分压后施加在三极管的BE结之间形成正反馈,因此其反馈系数如下式:
我们用下图所示电路参数进行仿真:
电路中我们加了一个电源开关,主要是在仿真运行开始后再闭合,这样可以让电路产生扰动从而更容易起振,有很多读者可能会出现这样的情况:明明电路是抄着某本书上的实验例子按部就班地做,却偏偏起不了振荡,这时可以尝试添加一个这样的开关。
当然,电路是否容易起振与电路参数也是相关的,参数合理则一次开合就可起振,差一点则需要多次开合才行,但如果参数不合理,来N次开合也是不行的,不能来硬的呀。
我们手工计算一下该电路振荡的输出频率,如下式:
基本电容三点式振荡电路的谐振频率由谐振电感L与串联电容C1、C2决定,而这两个电容直接与三极管的各个电极相连接,而三极管是存在极间电容的,且这些电容值随温度、电流等因素变化而变化,如下图所示:
相当于电容C1与CBE并联,而CBC与串联的总电容并联,亦即多种因素将导致电路谐振回路的稳定性下降。为了降低三极管极间电容对振荡电路稳定度的影响,我们可以使用下图所示的改进型振荡电路:
此电路也叫克拉波电路,在基本电容三点式振荡电路基础上增加了一个电容C5,此电容的值一般远小于C1与C2,这样谐振回路的电容如下图所示:
谐振总电容即C1、C2、C5三者的串联,极间寄生电容对总电容其实还是有影响的,但是它们接入系数(亦即对总电容的影响)相对于基本电容三点式电路已经下降,因此该电路的谐振频率如下所示:
仿真输出波形如下图所示(仿真输出频率约为15.019MHz):
下图为共集电极放大电路的克拉波振荡电路,读者可自行仿真分析:
克拉波振荡电路的稳定性很好,但其频率可调范围比较小,我们可以更进一步改进克拉波振荡电路,如下图所示:
此电路也称“西勒振荡电路”,在克拉波电路的基础上增加了电容C6与谐振电感L并联,这样可以改善克拉波电路频率可调范围小的缺点,此时电路的谐振回路等效图如下所示:
谐振回路的总电容即克拉波电路中的总电容与C6的并联,再次将三极管寄生极间电容的接入系数降低。总之就是不断地降低晶体管极间电容对谐振频率的影响,此时电路的谐振频率如下所示:
我们用下图所示电路参数仿真:
仿真输出波形如下图所示(仿真频率约为10.5789MHz):
三极管极间寄生电容也并非完全没有用武之地,当谐振频率超过GHz时,寄生电容可以代替谐振电容,如CBE可以代替C1(可以不用外接电容C1)
电容三点式振荡电路详解及Multisim实例仿真的更多相关文章
- 文氏电桥振荡电路原理详解及Multisim实例仿真
文氏电桥振荡电路(Wien bridge oscillator circuit),简称"文氏电桥",是一种适于产生正弦波信号的振荡电路之一,此电路振荡稳定且输出波形良好,在较宽的频 ...
- SpringMVC强大的数据绑定(2)——第六章 注解式控制器详解
SpringMVC强大的数据绑定(2)——第六章 注解式控制器详解 博客分类: 跟开涛学SpringMVC 6.6.2.@RequestParam绑定单个请求参数值 @RequestParam用于 ...
- spring事务详解(三)源码详解
系列目录 spring事务详解(一)初探事务 spring事务详解(二)简单样例 spring事务详解(三)源码详解 spring事务详解(四)测试验证 spring事务详解(五)总结提高 一.引子 ...
- Scala进阶之路-Scala高级语法之隐式(implicit)详解
Scala进阶之路-Scala高级语法之隐式(implicit)详解 作者:尹正杰 版权声明:原创作品,谢绝转载!否则将追究法律责任. 我们调用别人的框架,发现少了一些方法,需要添加,但是让别人为你一 ...
- Hadoop集群搭建安装过程(三)(图文详解---尽情点击!!!)
Hadoop集群搭建安装过程(三)(图文详解---尽情点击!!!) 一.JDK的安装 安装位置都在同一位置(/usr/tools/jdk1.8.0_73) jdk的安装在克隆三台机器的时候可以提前安装 ...
- Linux防火墙iptables学习笔记(三)iptables命令详解和举例[转载]
Linux防火墙iptables学习笔记(三)iptables命令详解和举例 2008-10-16 23:45:46 转载 网上看到这个配置讲解得还比较易懂,就转过来了,大家一起看下,希望对您工作能 ...
- python selenium 三种等待方式详解[转]
python selenium 三种等待方式详解 引言: 当你觉得你的定位没有问题,但是却直接报了元素不可见,那你就可以考虑是不是因为程序运行太快或者页面加载太慢造成了元素不可见,那就必须要加等待 ...
- Window下PHP三种运行方式图文详解,window下的php是不是单进程的?
Window下PHP三种运行方式图文详解,window下的php是不是单进程的? PHP运行目前为止主要有三种方式: a.以模块加载的方式运行,初学者可能不容易理解,其实就是将PHP集成到Apache ...
- OSGi 系列(三)之 bundle 详解
OSGi 系列(三)之 bundle 详解 1. 什么是 bundle bundle 是以 jar 包形式存在的一个模块化物理单元,里面包含了代码,资源文件和元数据(metadata),并且 jar ...
随机推荐
- algorithm库介绍之---- stable_sort()方法 与 sort()方法 .
文章转载自:http://www.cnblogs.com/ffhajbq/archive/2012/07/24/2607476.html 关于stable_sort()和sort()的区别: 你发现有 ...
- 在python的class中的,self到底是什么?
答案:self可以理解为一个字典变量,内部存的就是对象的数据属性.如:{'name':'zhang','age':'18'}就是这些. 注意只有数据属性,并没有创建新的类的方法. 类-----> ...
- 创建用户(adduser和useradd)和删除用户(userdel)
创建用户(adduser和useradd)和删除用户(userdel)及 一 用户创建命令: # adduser 用户名 # useradd 用户名 1) useradd 与 adduser ...
- 2020 Kali Linux Zenmap 安装(可视化界面)
跟着教程学Kali Linux,我安装的2020版的,发现Zemap没被预装. 1.下载 zenmap https://nmap.org/download.html 2.rpm转deb 2020 Ka ...
- nginx版本无缝升级与回滚
chookie和session 你们公司的会话保持怎么做的? 1.开发做的:记录用户登陆的状态,将用户登陆状态保存到,redis服务器中,nfs,mysql. 记录用户的登陆状态. 通过登陆用 ...
- 创建第一个django工程
一.环境搭建 使用anaconda + pycharm的环境. 1.创建虚拟环境并安装django1.8的包 # 创建虚拟环境 conda create -n django python=3.6 # ...
- 拉勾、Boss直聘、内推、100offer
BOSS直聘 拉勾.Boss直聘.内推.100offer
- Linux进阶之seq,pidof,wget,curl,tr,grep命令
本节内容 seq pidof wget curl tr grep 1.seq(sequence) 生成数列 例子1:指定结束位置 [root@renyz ~]# seq 5 1 2 3 4 ...
- SpringBoot 整合 mybatis 开启驼峰命名规则自动转换
引言 在使用 MyBatis 进行实际项目开发时,如果数据库表字段名与Java 实体类属性名不一致,映射时则需要编写表字段列表与 Java 实体类属性的映射关系,即resultMap,如下: < ...
- Linux系统编程【5】——stty的学习
从文件的角度看设备 之前几篇文章介绍的编程是基于文件的.数据可以保存在文件中,也可以从文件中取出来做处理,再存回去.不仅如此,Linux操作系统还专门为这个东西建立了一套规则,就是前期介绍的" ...