简介

运算放大器经常用作非线性器件来比较两个电压的幅值,在这种应用中,运算放大器用作开环配置,输入的一端(同相端+)是输入电压,输入的另一端(反相端-)是参考电压。输出端的电压在运放工作饱和电压值之间变化。

过零检测器

过零检测器的参考电压是0V电压,可以用“地”表示。

-电路

-仿真曲线

-程序

model ca
  Modelica.Electrical.Analog.Basic.Ground ground1 annotation(
    Placement(visible = true, transformation(origin = {0, -14}, extent = {{-10, -10}, {10, 10}}, rotation = 0)));
  Modelica.Electrical.Analog.Sources.SineVoltage sineVoltage1(V = 5, freqHz = 10, offset = 0, phase = 0, startTime = 0) annotation(
    Placement(visible = true, transformation(origin = {0, -36}, extent = {{10, -10}, {-10, 10}}, rotation = 0)));
  Modelica.Electrical.Analog.Sources.ConstantVoltage constantVoltage1(V = 15) annotation(
    Placement(visible = true, transformation(origin = {52, 22}, extent = {{-10, -10}, {10, 10}}, rotation = 0)));
  Modelica.Electrical.Analog.Basic.Ground ground2 annotation(
    Placement(visible = true, transformation(origin = {82, 12}, extent = {{-10, -10}, {10, 10}}, rotation = 0)));
  Modelica.Electrical.Analog.Sources.ConstantVoltage constantVoltage2(V = -15) annotation(
    Placement(visible = true, transformation(origin = {52, -32}, extent = {{-10, -10}, {10, 10}}, rotation = 0)));
  Modelica.Electrical.Analog.Basic.Ground ground3 annotation(
    Placement(visible = true, transformation(origin = {82, -42}, extent = {{-10, -10}, {10, 10}}, rotation = 0)));
  Modelica.Electrical.Analog.Ideal.IdealizedOpAmpLimted idealizedOpAmpLimted1 annotation(
    Placement(visible = true, transformation(origin = {42, -10}, extent = {{-10, -10}, {10, 10}}, rotation = 0)));
  Modelica.Electrical.Analog.Basic.Ground ground4 annotation(
    Placement(visible = true, transformation(origin = {-22, -52}, extent = {{-10, -10}, {10, 10}}, rotation = 0)));
equation
  connect(idealizedOpAmpLimted1.in_n, ground1.p) annotation(
    Line(points = {{32, -4}, {0, -4}}, color = {0, 0, 255}));
  connect(sineVoltage1.n, ground4.p) annotation(
    Line(points = {{-10, -36}, {-22, -36}, {-22, -42}}, color = {0, 0, 255}));
  connect(sineVoltage1.p, idealizedOpAmpLimted1.in_p) annotation(
    Line(points = {{10, -36}, {21, -36}, {21, -16}, {32, -16}}, color = {0, 0, 255}));
  connect(idealizedOpAmpLimted1.s_p, constantVoltage1.p) annotation(
    Line(points = {{42, 0}, {42, 0}, {42, 22}, {42, 22}}, color = {0, 0, 255}));
  connect(idealizedOpAmpLimted1.s_n, constantVoltage2.p) annotation(
    Line(points = {{42, -20}, {42, -20}, {42, -32}, {42, -32}}, color = {0, 0, 255}));
  connect(constantVoltage2.n, ground3.p) annotation(
    Line(points = {{62, -32}, {82, -32}, {82, -32}, {82, -32}}, color = {0, 0, 255}));
  connect(constantVoltage1.n, ground2.p) annotation(
    Line(points = {{62, 22}, {82, 22}, {82, 22}, {82, 22}}, color = {0, 0, 255}));
  annotation(
    uses(Modelica(version = "3.2.2")),
    experiment(StartTime = 0, StopTime = 1, Tolerance = 1e-06, Interval = 0.0002));
end ca;

非过零检测器

如果反相端输入不是零电压,而是一个其他的常值电压,则形成非过零检测器。

-电路

-仿真曲线

-程序

model ca
  Modelica.Electrical.Analog.Basic.Ground ground1 annotation(
    Placement(visible = true, transformation(origin = {-22, -14}, extent = {{-10, -10}, {10, 10}}, rotation = 0)));
  Modelica.Electrical.Analog.Sources.SineVoltage sineVoltage1(V = 5, freqHz = 10, offset = 0, phase = 0, startTime = 0) annotation(
    Placement(visible = true, transformation(origin = {0, -36}, extent = {{10, -10}, {-10, 10}}, rotation = 0)));
  Modelica.Electrical.Analog.Sources.ConstantVoltage constantVoltage1(V = 15) annotation(
    Placement(visible = true, transformation(origin = {52, 22}, extent = {{-10, -10}, {10, 10}}, rotation = 0)));
  Modelica.Electrical.Analog.Basic.Ground ground2 annotation(
    Placement(visible = true, transformation(origin = {82, 12}, extent = {{-10, -10}, {10, 10}}, rotation = 0)));
  Modelica.Electrical.Analog.Sources.ConstantVoltage constantVoltage2(V = -15) annotation(
    Placement(visible = true, transformation(origin = {52, -32}, extent = {{-10, -10}, {10, 10}}, rotation = 0)));
  Modelica.Electrical.Analog.Basic.Ground ground3 annotation(
    Placement(visible = true, transformation(origin = {82, -42}, extent = {{-10, -10}, {10, 10}}, rotation = 0)));
  Modelica.Electrical.Analog.Ideal.IdealizedOpAmpLimted idealizedOpAmpLimted1 annotation(
    Placement(visible = true, transformation(origin = {42, -10}, extent = {{-10, -10}, {10, 10}}, rotation = 0)));
  Modelica.Electrical.Analog.Basic.Ground ground4 annotation(
    Placement(visible = true, transformation(origin = {-22, -52}, extent = {{-10, -10}, {10, 10}}, rotation = 0)));
  Modelica.Electrical.Analog.Sources.ConstantVoltage constantVoltage3(V = 2) annotation(
    Placement(visible = true, transformation(origin = {6, -4}, extent = {{10, -10}, {-10, 10}}, rotation = 0)));
equation
  connect(constantVoltage3.n, ground1.p) annotation(
    Line(points = {{-4, -4}, {-22, -4}, {-22, -4}, {-22, -4}}, color = {0, 0, 255}));
  connect(constantVoltage3.p, idealizedOpAmpLimted1.in_n) annotation(
    Line(points = {{16, -4}, {32, -4}, {32, -4}, {32, -4}}, color = {0, 0, 255}));
  connect(sineVoltage1.n, ground4.p) annotation(
    Line(points = {{-10, -36}, {-22, -36}, {-22, -42}}, color = {0, 0, 255}));
  connect(sineVoltage1.p, idealizedOpAmpLimted1.in_p) annotation(
    Line(points = {{10, -36}, {21, -36}, {21, -16}, {32, -16}}, color = {0, 0, 255}));
  connect(idealizedOpAmpLimted1.s_p, constantVoltage1.p) annotation(
    Line(points = {{42, 0}, {42, 0}, {42, 22}, {42, 22}}, color = {0, 0, 255}));
  connect(idealizedOpAmpLimted1.s_n, constantVoltage2.p) annotation(
    Line(points = {{42, -20}, {42, -20}, {42, -32}, {42, -32}}, color = {0, 0, 255}));
  connect(constantVoltage2.n, ground3.p) annotation(
    Line(points = {{62, -32}, {82, -32}, {82, -32}, {82, -32}}, color = {0, 0, 255}));
  connect(constantVoltage1.n, ground2.p) annotation(
    Line(points = {{62, 22}, {82, 22}, {82, 22}, {82, 22}}, color = {0, 0, 255}));
  annotation(
    uses(Modelica(version = "3.2.2")),
    experiment(StartTime = 0, StopTime = 1, Tolerance = 1e-06, Interval = 0.0002));

end ca;

窗口比较器

如果将两个非零值比较器组合,可形成窗口比较器。只要输入Uin在窗口之内,则每个比较器的输入都为其低饱和电平,此时两个二极管都反相偏置,并且通过电阻接地。输出电压为0。当输入Uin在窗口之外,则某个比较器的输入为其高饱和电平,一个为低饱和电平,低饱和电平导致此路二极管反偏。

-电路

-曲线

-程序

model ca
  Modelica.Electrical.Analog.Basic.Ground ground1 annotation(
    Placement(visible = true, transformation(origin = {-64, 22}, extent = {{-10, -10}, {10, 10}}, rotation = 0)));
  Modelica.Electrical.Analog.Sources.SineVoltage sineVoltage1(V = 12, freqHz = 4, offset = 0, phase = 0, startTime = 0) annotation(
    Placement(visible = true, transformation(origin = {-42, 0}, extent = {{10, -10}, {-10, 10}}, rotation = 0)));
  Modelica.Electrical.Analog.Sources.ConstantVoltage constantVoltage1(V = 15) annotation(
    Placement(visible = true, transformation(origin = {10, 58}, extent = {{-10, -10}, {10, 10}}, rotation = 0)));
  Modelica.Electrical.Analog.Basic.Ground ground2 annotation(
    Placement(visible = true, transformation(origin = {40, 48}, extent = {{-10, -10}, {10, 10}}, rotation = 0)));
  Modelica.Electrical.Analog.Sources.ConstantVoltage constantVoltage2(V = -15) annotation(
    Placement(visible = true, transformation(origin = {10, 4}, extent = {{-10, -10}, {10, 10}}, rotation = 0)));
  Modelica.Electrical.Analog.Basic.Ground ground3 annotation(
    Placement(visible = true, transformation(origin = {40, -6}, extent = {{-10, -10}, {10, 10}}, rotation = 0)));
  Modelica.Electrical.Analog.Ideal.IdealizedOpAmpLimted idealizedOpAmpLimted1 annotation(
    Placement(visible = true, transformation(origin = {0, 26}, extent = {{-10, -10}, {10, 10}}, rotation = 0)));
  Modelica.Electrical.Analog.Basic.Ground ground4 annotation(
    Placement(visible = true, transformation(origin = {-64, -16}, extent = {{-10, -10}, {10, 10}}, rotation = 0)));
  Modelica.Electrical.Analog.Sources.ConstantVoltage constantVoltage3(V = 6) annotation(
    Placement(visible = true, transformation(origin = {-36, 32}, extent = {{10, -10}, {-10, 10}}, rotation = 0)));
  Modelica.Electrical.Analog.Ideal.IdealizedOpAmpLimted idealizedOpAmpLimted2 annotation(
    Placement(visible = true, transformation(origin = {0, -40}, extent = {{-10, -10}, {10, 10}}, rotation = 0)));
  Modelica.Electrical.Analog.Sources.ConstantVoltage constantVoltage4(V = 15) annotation(
    Placement(visible = true, transformation(origin = {10, -14}, extent = {{-10, -10}, {10, 10}}, rotation = 0)));
  Modelica.Electrical.Analog.Basic.Ground ground5 annotation(
    Placement(visible = true, transformation(origin = {42, -74}, extent = {{-10, -10}, {10, 10}}, rotation = 0)));
  Modelica.Electrical.Analog.Sources.ConstantVoltage constantVoltage5(V = -15) annotation(
    Placement(visible = true, transformation(origin = {10, -64}, extent = {{-10, -10}, {10, 10}}, rotation = 0)));
  Modelica.Electrical.Analog.Sources.ConstantVoltage constantVoltage6(V = -4) annotation(
    Placement(visible = true, transformation(origin = {-34, -46}, extent = {{10, -10}, {-10, 10}}, rotation = 0)));
  Modelica.Electrical.Analog.Basic.Ground ground6 annotation(
    Placement(visible = true, transformation(origin = {-64, -56}, extent = {{-10, -10}, {10, 10}}, rotation = 0)));
  Modelica.Electrical.Analog.Ideal.IdealDiode idealDiode1 annotation(
    Placement(visible = true, transformation(origin = {28, 26}, extent = {{-10, -10}, {10, 10}}, rotation = 0)));
  Modelica.Electrical.Analog.Ideal.IdealDiode idealDiode2 annotation(
    Placement(visible = true, transformation(origin = {30, -40}, extent = {{-10, -10}, {10, 10}}, rotation = 0)));
  Modelica.Electrical.Analog.Basic.Resistor resistor1(R = 1000)  annotation(
    Placement(visible = true, transformation(origin = {64, -54}, extent = {{-10, -10}, {10, 10}}, rotation = -90)));
  Modelica.Electrical.Analog.Interfaces.Pin pin annotation(
    Placement(visible = true, transformation(origin = {77, -9}, extent = {{-3, -3}, {3, 3}}, rotation = 0), iconTransformation(origin = {77, -9}, extent = {{-3, -3}, {3, 3}}, rotation = 0)));
  Modelica.Electrical.Analog.Basic.Ground ground7 annotation(
    Placement(visible = true, transformation(origin = {40, -24}, extent = {{-10, -10}, {10, 10}}, rotation = 0)));
equation
  connect(idealDiode1.p, idealizedOpAmpLimted1.out) annotation(
    Line(points = {{18, 26}, {10, 26}, {10, 26}, {10, 26}}, color = {0, 0, 255}));
  connect(ground2.p, constantVoltage1.n) annotation(
    Line(points = {{40, 58}, {20, 58}, {20, 58}, {20, 58}}, color = {0, 0, 255}));
  connect(idealizedOpAmpLimted1.in_n, constantVoltage3.p) annotation(
    Line(points = {{-10, 32}, {-26, 32}, {-26, 32}, {-26, 32}}, color = {0, 0, 255}));
  connect(idealDiode2.p, idealizedOpAmpLimted2.out) annotation(
    Line(points = {{20, -40}, {10, -40}, {10, -40}, {10, -40}}, color = {0, 0, 255}));
  connect(idealizedOpAmpLimted2.in_p, constantVoltage6.p) annotation(
    Line(points = {{-10, -46}, {-24, -46}, {-24, -46}, {-24, -46}}, color = {0, 0, 255}));
  connect(resistor1.p, pin) annotation(
    Line(points = {{64, -44}, {64, -44}, {64, -10}, {78, -10}, {78, -8}}, color = {0, 0, 255}));
  connect(idealDiode1.n, pin) annotation(
    Line(points = {{38, 26}, {64, 26}, {64, -10}, {78, -10}, {78, -8}, {78, -8}}, color = {0, 0, 255}));
  connect(constantVoltage4.n, ground7.p) annotation(
    Line(points = {{20, -14}, {40, -14}, {40, -14}, {40, -14}}, color = {0, 0, 255}));
  connect(constantVoltage2.n, ground3.p) annotation(
    Line(points = {{20, 4}, {30, 4}, {30, 6}, {40, 6}}, color = {0, 0, 255}));
  connect(idealizedOpAmpLimted1.s_p, constantVoltage1.p) annotation(
    Line(points = {{0, 36}, {0, 36}, {0, 58}, {0, 58}}, color = {0, 0, 255}));
  connect(constantVoltage3.n, ground1.p) annotation(
    Line(points = {{-46, 32}, {-64, 32}, {-64, 32}, {-64, 32}}, color = {0, 0, 255}));
  connect(sineVoltage1.n, ground4.p) annotation(
    Line(points = {{-52, 0}, {-64, 0}, {-64, -6}}, color = {0, 0, 255}));
  connect(constantVoltage6.n, ground6.p) annotation(
    Line(points = {{-44, -46}, {-64, -46}, {-64, -46}, {-64, -46}}, color = {0, 0, 255}));
  connect(idealizedOpAmpLimted1.in_p, sineVoltage1.p) annotation(
    Line(points = {{-10, 20}, {-10, 20}, {-10, 0}, {-32, 0}, {-32, 0}}, color = {0, 0, 255}));
  connect(idealizedOpAmpLimted2.in_n, sineVoltage1.p) annotation(
    Line(points = {{-10, -34}, {-10, 0}, {-32, 0}}, color = {0, 0, 255}));
  connect(idealizedOpAmpLimted1.s_n, constantVoltage2.p) annotation(
    Line(points = {{0, 14}, {0, 14}, {0, 2}, {0, 2}}, color = {0, 0, 255}));
  connect(idealDiode2.n, pin) annotation(
    Line(points = {{40, -40}, {64, -40}, {64, -10}, {78, -10}, {78, -10}, {78, -10}}, color = {0, 0, 255}));
  connect(constantVoltage4.p, idealizedOpAmpLimted2.s_p) annotation(
    Line(points = {{0, -16}, {0, -16}, {0, -32}, {0, -32}}, color = {0, 0, 255}));
  connect(idealizedOpAmpLimted2.s_n, constantVoltage5.p) annotation(
    Line(points = {{0, -52}, {0, -52}, {0, -66}, {0, -66}}, color = {0, 0, 255}));
  connect(constantVoltage5.n, ground5.p) annotation(
    Line(points = {{20, -64}, {42, -64}, {42, -64}, {42, -64}}, color = {0, 0, 255}));
  connect(resistor1.n, ground5.p) annotation(
    Line(points = {{64, -64}, {42, -64}, {42, -64}, {42, -64}}, color = {0, 0, 255}));
  annotation(
    uses(Modelica(version = "3.2.2")),
    experiment(StartTime = 0, StopTime = 1, Tolerance = 1e-06, Interval = 0.0002));
end ca;

Modelica示例——比较器电路相关推荐

  1. 【IC5】运算放大器的驱动能力,Comparator比较器电路,运算放大器和功率放大器的区别,

    1,运放直接驱动负载要加一级驱动,什么是一级驱动 你所说的一级驱动是具有一定的电流驱动能力的电路,为什么需要驱动电流能力呢?因为很多运放是设计用来驱动容性负载的,而容性负载不需要有恒定的电流流过,但是 ...

  2. 单限比较器电路、迟滞比较器、双限比较器(窗口比较器)

    lm339应用电路图集 lm339应用电路图:LM339集成块内部装有四个独立的电压比较器,该电压比较器的特点是: 失调电压小,典型值为2mV:电源电压范围宽,单电源为2-36V,双电源电压为±1V- ...

  3. 迟滞比较器电路的分析

    迟滞比较器的应用范围很广,他相对于普通的比较器而言,接入了一个正反馈,所以有了一个迟滞范围,具体情况我们在下面进行分析,所以搞干扰性能很好.对于输入信号有抖动的情况下可以保证输出电平的稳定.下面我们来 ...

  4. verilog设计简易正弦波信号发生器_采用集成运放和分立元件相结合的方式,利用迟滞比较器电路产生方波信号,以及充分利用差分电路进行电路转...

    展开全部 在Multisim中,函数发生器2113与被测设5261备连接时应注意以下情况:函数发生4102器有三个连接端子1653,+连接端子和-连接端子,中间是公用端子.当使用+和共用端子时,输出信 ...

  5. 红外对管信号处理电路(滞回比较器)

    近期在做一个本科时的电机控制项目,其速度检测不用编码器,换用廉价精度低的光电码盘,10线,配合红外对管测速,红外对管采用GK152,类似对管都一样.电路: 滞回比较电路:上图是两对红外对管,下图是A或 ...

  6. 一种非常实用的系统掉电检测和保护电路---摘自:周立功单片机

    目录 本文导读 系统掉电保护的重要性和可行性 掉电检测保护电路功能框图 LM393比较器电路运用 MP1542升压电路运用 掉电检测保护电路的电源波形和工作过程 本文导读 可靠性是每一个产品的灵魂,如 ...

  7. 电子设计教程29:滞回比较器(施密特触发器)

      为系统增加滞回控制,可以让系统对于微小变化不那么敏感,增强系统的抗干扰能力.本文讨论如何滞回比较器的原理. 单限比较器   比较器一般来说只输出高低电平,如果运放用作比较器,则无需工作在线性区.由 ...

  8. 硬件入门之: 滞回比较器分析计算

    比较器的特点:输出端有上拉电阻,无负反馈网络. 滞回比较器的特点:在比较器的基础上对正向输入端加了反馈网络. 滞回比较器电路:   两个阀值的等效计算如下:   当U1的4脚输入电压高于4.25V时, ...

  9. 运放-运算放大器经典应用电路大全-应用电路大全-20种经典电路

    文章目录 20种运放典型电路总结,电路图+公式 1.运放的符号表示 2.集成运算放大器的技术指标 3.集成运放分析方法(V+=V-虚短,ib-=ib+=0虚断) 01反相比例运算电路 0 2同相比例运 ...

最新文章

  1. 谷歌大幅削减其应用商店服务费
  2. 一劳永逸解决IDEA 2019.3连接MySQL80时区(serverTimezone)问题
  3. 计算机网络运输层之多路复用与多路分解
  4. 决策树(Decision Tree)和随机森林
  5. PR值:PagePank算法
  6. 新手入坑 java的开发语言环境
  7. 12 个非常有用的 JavaScript 技巧
  8. 一张图学会python应用到excel-Python | 编写一个简单的Excel处理脚本
  9. 端到端语音识别技术预研与实践
  10. 免费地图制作软件,在线做地图的平台推荐
  11. 功率 db 和dbm 的区别
  12. 马斯克的“圣战”:阻止人工智能毁灭人类
  13. 服务器怎么使用无线网卡,无线上网卡怎么用
  14. I.MX8M mini物联网开发板框架及屏幕接口详解
  15. Android app ADB命令
  16. 南开大学张昊计算机,张昊(东北大学工商管理学院副教授)_百度百科
  17. Android10.0,计步传感器(Sensor.TYPE_STEP_COUNTER) 无法计步
  18. SpringBoot+Maven 多模块项目的构建、运行、打包实战
  19. scrapy实例 ----- 爬取小说
  20. 中间件-------activityMQ整合springboot

热门文章

  1. 上海航芯 | 全自动咖啡机设计方案
  2. JAVA计算机毕业设计高校教材征订管理系统Mybatis+源码+数据库+lw文档+系统+调试部署
  3. 在进化计算中,软件进行元基编码的新陈代谢方式 V0. 1. 0
  4. 爆米豆分页插件使用及mysql的find_in_set函数使用
  5. RT-Thread柿饼的控件简介
  6. oracle部门总工资的函数,Oracle分析函数
  7. JS事件的绑定和解绑
  8. 性能摄影设计续航怎么选?荣耀Play4T系列全都要!
  9. 微信中禁止网页下拉出现网页由XXX提供
  10. 2017京东实习生笔试题之异或