单片机 0~10V 输出电路的实现

聊聊单片机实现 0~10V 输出电路的几种方案   ......  by 矜辰所致

目录

  • 前言
  • 一、MCU 的 DAC
  • 二、PWM 加滤波电路
    • 2.1 PWM 输出 DAC
    • 2.2 PWM 接滤波器的RC值选择说明
    • 2.3 0~ 3.3V PWM 输出 0 ~10V
      • 方案一:RC 滤波器
      • 方案二:三极管
  • 三、专用转换芯片
  • 结语

前言

好久没有上电路小课堂的课了,也是最近项目遇到的需求,想着正好做个电路记录总结。

当然本文的电路以前我也不是全部用过,但是既然写了,那么我肯定给他画个实际的板子,每个都测试一遍。

本次的电路小课堂主要内容就是: 使用单片机如何实现 0 ~ 10V 的信号输出。

我是矜辰所致,全网同名,尽量用心写好每一系列文章,不浮夸,不将就,认真对待学知识的我们,矜辰所致,金石为开!

一、MCU 的 DAC

第一种方式,利用单片机自带的DAC模块,现在很多的单片机都自带了 DAC 模块,我们可以直接使用 DAC 模块的输出进行实现。

比如我们最常见的单片机供电系统为: 0 ~ 3.3V。 那么我们就可以将 0 ~ 3.3 V 放大 3倍,实现 0~ 10V 的输出。

放大电路当然是使用运放实现,在我的另外一篇博文里面总结过运放的常用电路:

常用运放电路总结记录

这里我们用到的是同相比例运放电路,如下图:

单片机 0~10V 输出电路的实现_第1张图片

DAC1 为单片机的 DAC 输出,0 ~ 3.3V ,放大 3 倍。

R2 选择 3.3K 还是因为运放的对称性,选择与 R4 和 R3 并联电阻相等的阻值。

本文是电路总结记录,至于电路的效果,我需要看一看是否需要后续补充到文中,因为除了专用芯片,这种用 单电源供电的 普通运放 搭建的电路多少会存在一些问题,最典型的一个问题就是能否输出 0 V。

二、PWM 加滤波电路

第二种方式,使用 PWM 加滤波电路。

2.1 PWM 输出 DAC

如何让 PWM 波形变成模拟量输出,那就是加上滤波电路,经过一个滤波电路,可以使得PWM变成DAC输出。如下图:

单片机 0~10V 输出电路的实现_第2张图片

对于具体的 滤波器的基础分析,我应该会单独写一篇文章来说明,这里我们只是提一下,知道使用 RC 滤波器可以使得 PWM 输出变成模拟电压。

上图只使用一个 RC 的滤波电路称为一阶滤波电路。

为了使得输出更加平滑,我们会使用二阶甚至多阶滤波电路。

为了使得带载能力更强,我们会使用后面接电压跟随器等运放电路。

2.2 PWM 接滤波器的RC值选择说明

对于 RC 滤波器的 RC值选择,是新手难以理解处理的一个点,这也是滤波器设计的重点之一。

我们都知道,RC低通滤波电路的截止频率:

fc=1/2πRC

这个公式非常重要,了解 RC 滤波器必须牢记的公式,截止频率公式。

截止频率实际上是输入信号幅度降低 3dB 的频率。截止频率也称为 -3 dB频率

简单几点说明(当然,如果要具体算式分析,可自行网上搜索,博主还没有写过 RC 滤波器的文章 = =!):

  • R 越小,输出损耗越大
  • R 越大,噪声纹波越大
  • C 越小(比如到达 pf 级别后),越容易被寄生电容影响
  • C 越大(比如比较大的 uf 级别后),因为电容越大,普通情况下就只能使用电解电容,但是电解电容的高频特性很差,在 RC 滤波器中尽量不要使用电解电容

说来说去,这不是这也不行那也不行? = =! 实际上就是这样,这种低成本的电路没有完美的,我们总做的就是一个权衡,在有限的成本规定范围内,设计出一个满足需要的电路。

对于本文我们的 PWM 而言,其本质上是一种高频脉冲信号,其中的高频分量会被低通滤波器滤掉,只有低频分量才能通过滤波器,形成模拟信号输出。我们要保证 PWM 的频率 远大于 RC 低通滤波器的截止频率,至少在 10 倍以上甚至数十倍,因为越往上的频率信号,滤波的效果越来越好。

很遗憾在给 PWM 信号做滤波的时候并没有一个完美的固定值范围告诉大家,一般来说 ,保持电阻在 K 级别,数百欧姆到 K级别都可以,然后电容 nf 级别,nf 到 1uf,当然这只是普通情况,还是具体情况具体分析。

涉及到的细节需要经过很多的分析,但是大家放心,在一般使用中,即便你不知道如何选择,根据网上你能找到的参考 “经验值” ,你也可以完成电路的设计。

重要的是在你按照经验值设计完电路发现问题了以后知道如何去查找问题,如何去调整参数,这是硬件设计的关键所在。

2.3 0~ 3.3V PWM 输出 0 ~10V

方案一:RC 滤波器

上面简单的说明了一下,那么上一下我们本次测试的电路:

单片机 0~10V 输出电路的实现_第3张图片

图中的阻容大家可以根据自己的需求修改。

方案二:三极管

三极管的方案是参考 B 站 Eric文老师 视频中的电路,因为某些原因,不放链接,大家可以自行搜索,这里也当做借鉴分享给大家!

有一个问题,偏执电压老师讲的图上好像是 11V ,这个并不好满足,我使用一个 12 V 串联一个 二极管测试一下:

单片机 0~10V 输出电路的实现_第4张图片

因为上图为借鉴,仅供参考!

三、专用转换芯片

前面的两种方式成本相对都比较低,和电平转换电路一样,0 ~10V 输出也有专门的转换芯片。

但实际上我没用过,但是既然都要测试了,那也不能落下,那么一下子也不知道什么芯片好,只能去网上搜索(虽然按我的理解是度娘搜索的芯片只能说广告做得多,并不见得好),但是也没有其他办法,于是乎经过一通搜索, 那就是这款芯片了: GP8101 。

看了一下介绍,这个芯片有一个系列,不仅有 PWM 输入的,还有 I2C 结口的:在这里插入图片描述
这里就不贴太多说明了,大家自行可以搜索,本文也就把他当做一种方案,我们直接根据推荐电路设计电路图即可:

单片机 0~10V 输出电路的实现_第5张图片

结语

本文列出了使用单片机如何实现 0 ~ 10V 输出电路的不同方案。

要说最稳定省心的,肯定是使用专用芯片,如果确实对成本敏感,那就得结合实际需求考虑了。对于文章列出的几个电路,后续如果在实际测试中有新的发现,博主也会第一时间更新文章。

好了,本文就到这里,谢谢大家!

推荐阅读:

全面认识MOS管,一篇文章就够了

全面认识二极管,一篇文章就够了

聊聊电源自动切换电路(常用自动切换电路总结)

结合实际聊聊防反接电路(防反接电路总结)

结合实际聊聊电平转换电路(常用电平转换电路总结)

你可能感兴趣的:(电路小课堂,单片机,嵌入式硬件,0-10V,调光电路,电路设计)