基于Multisim的函数信号发生器–方波、三角波、正弦波[通俗易懂]

设计要求-基本要求设计制作一个方波-三角波-正弦波信号发生器,供电电源为±12V。(1)输出频率能在1-10KHZ范围内连续可调;(2)方波输出电压Uopp=12V(误差<20%),上升、下降沿小于10us;(3)三角波信号输出电压Uopp=8V(误差<20%);(4)正弦波信号输出电压Uopp≥1V,无明显失真。-提高要求(1)将输出方波改为占空比可调的矩形波,占空比可调范围30%–70%;(2)三种波形的输出峰峰值Uopp均在1~10V范围内连续可调。设计思路-电

大家好,又见面了,我是你们的朋友全栈君。

设计要求

– 基本要求

设计制作一个方波-三角波-正弦波信号发生器,供电电源为±12V。
(1)输出频率能在1-10KHZ范围内连续可调;
(2)方波输出电压Uopp=12V(误差<20%),上升、下降沿小于10us;
(3)三角波信号输出电压Uopp=8V(误差<20%);
(4)正弦波信号输出电压Uopp≥1V,无明显失真。

– 提高要求
(1)将输出方波改为占空比可调的矩形波,占空比可调范围30%–70%;
(2)三种波形的输出峰峰值Uopp均在1~10V范围内连续可调。

设计思路

– 电路组成
实验设计的函数发生器包括比较器与积分器组成的方波-三角波发生电路以及差分放大电路组成的三角波-正弦波转换电路,可依次生成方波、三角波、正弦波,将各模块组合起来即形成一个简易函数信号发生器。
– 方波-三角波发生电路及工作原理
方波-三角波发生电路是由迟滞比较器和RC积分器组成的自激振荡电路,两者的输出信号互为输入信号。
方波发生具体是由迟滞比较器与RC反馈组成的,其电压传输特性如下图所示:
在这里插入图片描述

在比较过程中,电容循环充放电产生自激振荡,故而可生成方波。
比较器输出的方波经过积分器便可得到同频率的三角波,如下图所示:
在这里插入图片描述

而三角波反馈回比较器的同相入端, 继而触发比较器循环翻转形成方波。
此电路的线性性、抗干扰能力都较好,通过加入电位器即实现频率连续可调, 且不影响输出信号幅值。

– 三角波-正弦波转换电路及工作原理
三角波-正弦波转换电路是由有源差分放大电路组成的。
根据差分放大器传输特性曲线的非线性,如下图所示:
在这里插入图片描述

当积分器输出的三角波正负峰值接近差分放大管的截止电压时,晶体管集电极电流随时间变化的波形正好接近于正弦波,从而实现三角波-正弦波的转换,且传输特性曲线越对称、线性区越窄越好。

– 频率连续可调
在方波-三角波生成电路中添加合适的电位器,改变积分器的RC值,可实现在一定范围内调节频率。
– 幅度连续可调
在各信号输出点与地之间加上合适阻值的电位器,即可通过调节电位器从而分压,实现在一定范围内幅度可调的功能。
– 矩形波占空比可调
将积分器中的电阻改为电位器,并加入两个反向二极管。利用二极管的单向导电性,当调节电位器使两个二极管串接的电阻值不同,从而使得电容充放电时间不同,继而实现在一定范围内调节占空比的功能。

仿真电路图

  • 不含提高要求

不含提高要求

  • 含提高要求

含提高要求

仿真结果

  • 三角波
    在这里插入图片描述
    在这里插入图片描述

  • 方波
    在这里插入图片描述
    在这里插入图片描述

  • 正弦波
    在这里插入图片描述
    在这里插入图片描述

  • 矩形波
    在这里插入图片描述
    在这里插入图片描述

元器件使用情况

在这里插入图片描述
最近整理了一些以往的实验,在本实验中关于各个模块与数据的具体设计并未在文中提及,故仅供参考,若与错误欢迎指出!

版权声明:本文内容由互联网用户自发贡献,该文观点仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请联系我们举报,一经查实,本站将立刻删除。

发布者:全栈程序员-站长,转载请注明出处:https://javaforall.net/128849.html原文链接:https://javaforall.net

(0)
全栈程序员-站长的头像全栈程序员-站长


相关推荐

  • 用户案例怎么写_用户运营案例

    用户案例怎么写_用户运营案例用户案例 – 3Cs

    2022年4月21日
    50
  • JVM调优工具总结(jConsole jmc jvisualvm)

    JVM调优工具总结(jConsole jmc jvisualvm)一、环境准备,centos7服务器一台,安装jdk1.8,一个可运行java的jar包,最好是有个服务器运维工具,我用的是宝塔面板,主要是用来开放端口,当然你是用命令开放也可以的。本地win10上安装jdk1.8二、启动1.将jar包放在linux服务器上,我的在/usr/java/jar目录下,ay.jarhostname远程主机地址port:10991这个不用改,默认就…

    2022年5月31日
    32
  • flow control

    flow controlPCIE每个VirtualChannel都维护一个独立的FlowControlCreditPool。发送端要发送TLP,首先得获得Credit。FlowControl对3种TLP有效:1.PostedRequest(P)-Messages和MemoryWrites;2.Non-PostedRequest(NP)-所有的Reads,I/Owrites,Con…

    2022年5月3日
    61
  • 使用phpmaill发送邮件的例子

    使用phpmaill发送邮件的例子

    2021年9月20日
    44
  • Verilog 流水线设计[通俗易懂]

    Verilog 流水线设计[通俗易懂]一、什么是流水线流水线设计就是将组合逻辑系统地分割,并在各个部分(分级)之间插入寄存器,并暂存中间数据的方法。目的是将一个大操作分解成若干的小操作,每一步小操作的时间较小,所以能提高频率,各小操作能并行执行,所以能提高数据吞吐率(提高处理速度)。二、什么时候用流水线设计使用流水线一般是时序比较紧张,对电路工作频率较高的时候。典型情况如下:1)功能模块之间的流水线,用乒乓buffer来交互数据。代价是增加了memory的数量,但是和获得的巨大性能提升相比,可以忽略不计。2)I/O瓶

    2022年8月14日
    4
  • python中延时函数_python延时函数

    python中延时函数_python延时函数广告关闭腾讯云11.11云上盛惠,精选热门产品助力上云,云服务器首年88元起,买的越多返的越多,最高返5000元!可以使用python的time模块来实现类似于c中的sleep函数作用代码如下:importtimedefsleep(mytime=‘’):time.sleep(mytime)printcallsleepsleep(5)#sleep5sprint‘sleepen…

    2022年6月17日
    61

发表回复

您的邮箱地址不会被公开。 必填项已用 * 标注

关注全栈程序员社区公众号