嵌入式硬件重点(四)常用信号处理、放大电路、运算放大器(运放)基础篇

news2024/12/24 2:37:58

引言:在嵌入式硬件设计中,信号处理和放大电路是至关重要的组成部分。它们不仅影响系统的性能,还直接关系到数据的准确性和可靠性。随着嵌入式系统的广泛应用,对各种传感器和外部设备的信号进行有效处理显得尤为重要。
运算放大器(运放)作为一种重要的模拟电路元件,在信号放大和处理过程中发挥着重要作用。运放可以实现多种功能,包括加法、减法、积分、微分等,通过适当的配置可以设计出各种应用电路,如下图为实物图,先作为引子,留个印象。

目录

运放的理论知识

运算放大器的传输特性

运算放大器的优点 

运放的原理

运放的理论知识

下图为运算放大器的符号,主体为一个三角形,有五个引脚,下述对引脚进行阐述。

  • 非反相输入端(+)

    • 该引脚用于输入信号,输入信号经过运放后保持相位不变。
    • 适用于增益为正的放大电路。
  • 反相输入端(-)

    • 该引脚同样用于输入信号,但输入信号经过运放后会反相。
    • 适用于增益为负的放大电路,常用于差分放大等应用。
  • 输出端(Out)

    • 运放的输出信号从此引脚输出,输出电压取决于输入信号和电路配置。
    • 该端口可以驱动负载。
  • 电源引脚(V+ 和 V-)

    • 运放通常需要正负电源供电,V+为正电源引脚,V-为负电源引脚。某些单电源运放仅有V+引脚。
    • 确保运放工作在适当的电源电压范围内,以保证其性能。

下图为运放相关手册的结构图。

运算放大器(运放)和三极管(BJT、FET等)都是用于信号放大的重要组件,但它们在结构、工作原理和应用方面存在显著的区别。以下是两者的比较。

此为运放电路的结构图:

此为三极管放大电路:

1. 基本结构

  • 运放
    • 运放通常由多个晶体管、二极管和电阻构成的集成电路。它具有多个引脚(如非反相输入、反相输入、输出、正负电源等)。
  • 三极管
    • 三极管是一种单一的半导体元件,主要有三根引脚(发射极、基极、集电极)。它可以是NPN或PNP类型。

2. 工作原理

  • 运放

    • 运放基于差动放大原理,输出电压为两个输入端电压之差的放大。运放可以通过外部反馈电路配置来控制增益和频率响应。
  • 三极管

    • 三极管通过基极电流控制集电极与发射极之间的电流。其工作主要依赖于电流放大原理。

3. 增益特性

  • 运放

    • 运放具有非常高的开环增益(通常为10^5到10^6),但通过负反馈可以稳定增益并提高线性度。
  • 三极管

    • 三极管的增益(β或hFE)相对较低,通常在20到1000之间,且对温度和其他因素敏感。

4. 输入和输出阻抗

  • 运放

    • 运放具有高输入阻抗和低输出阻抗,适合用于信号源的连接。
  • 三极管

    • 三极管的输入阻抗通常较低(尤其是BJT),输出阻抗较高,可能需要使用阻抗匹配电路。

5. 电源需求

  • 运放

    • 运放通常需要双电源(正负电源),但有些类型支持单电源供电。
  • 三极管

    • 三极管一般只需要一个电源供电,适用性更广。

运算放大器的传输特性

当我们了解完引脚功能之后,接下来对运放的特性图进行掌握。

上述参数引脚已经一一对应上了,A 即为运放的放大倍率,它是运放的一个固有参数,这个参数我们先不用去考虑,接下来的篇幅也会对其开展。只需要知道一般来说A非常大,可以达到几十万,因此,相关特性图的函数图也会非常 “陡峭” Up跟Un相差几十微伏或者更小时,才会进入这个区间。

下述图示部分就开始对传输特性进行演示以及模拟了,运放比较器。

运放比较器的工作原理基于其高增益特性。当两个输入电压(非反相输入和反相输入)被施加到运放的输入端时,运放会根据这两个电压的大小关系产生输出信号:

  • 当 V+ > V-(非反相输入电压大于反相输入电压)时,输出接近正电源电压(Vout ≈ V+)。
  • 当 V+ < V-(非反相输入电压小于反相输入电压)时,输出接近负电源电压或接地(Vout ≈ V-)。

这种特性使得运放可以用于实现开关行为。

Un 从 0V 上升到 5V 的过程中,输出电压波形如下所示。

当 Un 位于正弦波的下方时,Up > Un,输出 高电平。

当 Un 位于正弦波的中间时,输出 高电平。

当 Un 位于正弦波的上方时,输出 低电平。

综上,我们用的只是非线性区,对于中间的线性区域才是最重要的,后文笔者会对此放大器进行详细的梳理。

运算放大器的优点 

1、高增益:放大倍数为几千到几十万!Au = 10000+
2、线性度好:三极管放大电路会出现非线性失真,运放不会
3、输入阻抗(Ri)高(无穷),输出阻抗(Ro)低(几欧姆)
4、使用方便,电路结构简单,可控性好。

下图为原理图中的结构。

运放的原理

将同相端与反相端的电压差值放大Au倍

由运放的放大曲线知: 如果U+ - U- 超过了一定的值, 运放的输出电压就不会随着输入电压的差值增大而增大, 会变为水平,进入饱和区。 饱和电压为运放的供电电压。 如何才能正常的放大实际信号呢?显然, 第一个条件是运放必须工作在线性区, 第二个条件:运放必须引入反馈,工作在闭环状态。

u+  为同相输入端,u- 为反相输入端,uo为输出端
三者满足以下关系: Uo = Au*(U+  -  U-)
前面说过,Au为放大倍数,一般为几万到几十万!
现假设如下:
U+ = 0.002mV,U- = 0.001mV,Au = 100万 = 10^6 那么Uo = 10^6*(0.002 – 0.001) =  1 V

开环:不接反馈电阻Rf 闭环:输出端经过反馈电阻接到反相输入端
饱和电压为运放的供电电压。根据这个性质, 运放在开环状态可以当作电压比较器使用

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.coloradmin.cn/o/2231514.html

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈,一经查实,立即删除!

相关文章

3D Gaussian Splatting代码详解(二):模型构建

3 模型构建 gaussians GaussianModel(dataset.sh_degree) 3.1 初始化函数 __init__ 构造函数 构造函数 __init__ 的主要作用是初始化 3D 高斯模型的各项参数和激活函数&#xff0c;用于生成 3D 空间中的高斯表示。 初始化球谐函数的参数&#xff1a; self.active_sh_degre…

自由学习记录(18)

动画事件的碰撞器触发 Physics 类的常用方法 RaycastHit hit; if (Physics.Raycast(origin, direction, out hit, maxDistance)) {Debug.Log("Hit: " hit.collider.name); } Physics.Raycast&#xff1a;从指定点向某个方向发射射线&#xff0c;检测是否与碰撞体…

[FE] React 初窥门径(四):React 组件的加载过程(render 阶段)

1. 回顾 前几篇文章中&#xff0c;我们采用了 VSCode 插件 CodeTour 来记录代码的执行过程&#xff0c; 并把相关的数据 .tour/ 放到了 github: thzt/react-tour 中。 截止到本文为之&#xff0c;我们总共记录了这些 code-tour&#xff0c; .tour/ ├── 2. 构建过程.tour ├─…

java毕业设计之基于Bootstrap的常州地方旅游管理系统的设计与实现(springboot)

项目简介 基于Bootstrap的常州地方旅游管理系统的设计与实现有下功能&#xff1a; 基于Bootstrap的常州地方旅游管理系统的设计与实现的主要使用者分为用户功能模块和管理员功能模块两大部分&#xff0c;用户可查看景点信息、景点资讯等&#xff0c;注册登录后可进行景点订票…

单链表OJ题(3):合并两个有序链表、链表分割、链表的回文结构

目录 一、合并两个有序链表 二、链表分割 三、链表的回文结构 u解题的总体思路&#xff1a; 合并两个有序链表&#xff1a;首先创建新链表的头节点&#xff08;哨兵位&#xff1a;本质上是占位子&#xff09;&#xff0c;为了减少一些判断情况&#xff0c;简化操作。然后我们…

为数据集而生的 SQL 控制台

随着数据集的使用量急剧增加&#xff0c;Hugging Face 社区已经变成了众多数据集默认存放的仓库。每月&#xff0c;海量数据集被上传到社区&#xff0c;这些数据集亟需有效的查询、过滤和发现。 Dataset Monthly Creations 每个月在 Hugging Face Hub 创建的数据集 我们现在非常…

简易了解Pytorch中的@ 和 * 运算符(附Demo)

目录 1. 基本知识2. 3. * 1. 基本知识 在 PyTorch 中&#xff0c; 和 * 运算符用于不同类型的数学运算&#xff0c;具体是矩阵乘法和逐元素乘法 基本知识 运算符功能适用场景示例矩阵乘法&#xff08;或点乘&#xff09;用于执行线性代数中的矩阵乘法C A B&#xff0c;其中…

JavaScript知识点梳理及案例实践

1. Date对象 创建Date对象 //方法1&#xff1a;不指定参数 var nowd1new Date(); console.log(nowd1.toLocaleString( )); //方法2&#xff1a;参数为日期字符串 var d2new Date("2004/3/20 11:12"); console.log(d2.toLocaleString( )); var d3new Date("04/…

推荐一款Windows维护和修复工具包:RepairKit

RepairKit是一个综合性的Java开发的Windows修复和维护工具包。该工具包旨在为用户提供一个专用的系统修复工具&#xff0c;并快速访问一些操作系统功能及其他附带的电脑维护软件。 RepairKit 提供了一个简单有效的解决方案&#xff0c;用于维护PC的顺畅运行。它包括自动修复/清…

cocos开发QA

目录 TS相关foreach循环中使用return循环延迟动态获取类属性 Cocos相关属性检查器添加Enum属性实现不规则点击区域使用cc.RevoluteJoint的enable激活组件无效本地存储以及相关问题JSON.stringify(map)返回{}数据加密客户端复制文本使用客户端方法热更新LabelOutline.color is d…

大数据新视界 -- 大数据大厂之 Impala 性能优化:数据存储分区的艺术与实践(下)(2/30)

&#x1f496;&#x1f496;&#x1f496;亲爱的朋友们&#xff0c;热烈欢迎你们来到 青云交的博客&#xff01;能与你们在此邂逅&#xff0c;我满心欢喜&#xff0c;深感无比荣幸。在这个瞬息万变的时代&#xff0c;我们每个人都在苦苦追寻一处能让心灵安然栖息的港湾。而 我的…

记第一次本地编译seatunnel源码

拉取代码 git clone https://github.com/apache/seatunnel.git 使用版本 我们生产环境用的是2.3.5版本&#xff0c;所以基于2.3.5-release分支代码进行编译。 maven package过程 遇到的第一个问题&#xff1a;‘com.sun.tools.javac.tree.JCTree com.sun.tools.javac.tree…

6.1、属性动画

使用显式动画产生布局更新动画 1.旋转动画 只修改对应的属性 rotate({angle: this.angle}) 即可达到效果 动画效果 对应实现代码 @Entry @Component struct AnimationPage {@State angle:number = 0aboutToAppear() {

串口屏控制的自动滑轨(未完工)

序言 疫情期间自己制作了一个自动滑轨&#xff0c;基于无线遥控的&#xff0c;但是整体太大了&#xff0c;非常不方便携带&#xff0c;所以重新设计了一个新的&#xff0c;以2020铝型材做导轨的滑轨&#xff0c;目前2020做滑轨已经很成熟了&#xff0c;配件也都非常便宜&#x…

Git在码云上的使用指南:从安装到推送远程仓库

目录 前言&#xff1a; 1、git的安装 1.1.Linux-centos环境下安装 1.2.Linux-ubuntu环境下安装 2.创建Git本地仓库 3.配置Git 4.认识⼯作区、暂存区、版本库 5.添加文件 5.1.git命令 5.2.commit命令 6.远程操作 6.1.新建远程仓库 6.2.克隆远程仓库&#xff1a; 6…

GESP4级考试语法知识(冒泡排序)

冒泡排序参考程序&#xff1a; #include <iostream> using namespace std; const int MAXN10001; int main() {int n,i,j;float a[MAXN];cin>>n;for(i1;i<n;i)cin>>a[i]; //输入n个数bool ok;for(in;i>1;i--){oktrue; //判断是…

无人机场景 - 目标检测数据集 - 夜间车辆检测数据集下载「包含VOC、COCO、YOLO三种格式」

数据集介绍&#xff1a;无人机场景夜间车辆检测数据集&#xff0c;真实场景高质量图片数据&#xff0c;涉及场景丰富&#xff0c;比如夜间无人机场景城市道路行驶车辆图片、夜间无人机场景城市道边停车车辆图片、夜间无人机场景停车场车辆图片、夜间无人机场景小区车辆图片、夜…

重学SpringBoot3-整合 Elasticsearch 8.x (一)客户端方式

更多SpringBoot3内容请关注我的专栏&#xff1a;《SpringBoot3》 期待您的点赞&#x1f44d;收藏⭐评论✍ 这里写目录标题 1. 为什么选择 Elasticsearch&#xff1f;2. Spring Boot 3 和 Elasticsearch 8.x 的集成概述2.1 准备工作2.2 添加依赖 3. Elasticsearch 客户端配置方式…

动态规划应该如何学习?

动态规划如何学习 参考灵神的视频和题解做的笔记&#xff08;灵神YYDS&#xff0c;以后也都会用这套逻辑去思考&#xff09; 枚举选哪个&#xff1a; 动态规划入门&#xff1a;从记忆化搜索到递推_哔哩哔哩_bilibili 746. 使用最小花费爬楼梯 - 力扣&#xff08;LeetCode&a…

从零开始构建 ChatGPT

今天&#xff0c;我们要介绍的是一个名为 LLMs-from-scratch 的 GitHub 项目&#xff0c;它由开发者 rasbt 精心打造&#xff0c;旨在一步步教你如何使用 PyTorch 从零开始实现一个类似 ChatGPT 的大型语言模型&#xff08;LLM&#xff09;。 这是一个教育性质的开源项目&…