1.原理及用途

(1)原理直接引用*原子STM32讲解PWM转DAC的篇章*

(2)当MCU中DAC功能不够用时,而还要输出可控的DC电平,这时可以使用这种模式来达到目的;另外一些由PWM控制的负载器件,比如比例阀、电机,要测试这些负载流过的等效电流,也可以使用这种方法

2.需求分析

我们这里使用二阶RC低通滤波来达到检流电阻的PWM波等效DC直流电平的功能;

电路示意图如下,这里的PWM不是MCU直接输出的,而是经过推挽放大电路处理过的信号

R11/R12 、C3/C4组成二阶RC滤波;这里R11=R12、C3=C4

3.数学计算

假如我们要求经过滤波后结果达到检测电流±1mA,则1个位的精度达到1.5/2048=0.0007324V,采样电阻电平范围0-1.5V

假设被滤波的信号电压范围0-1.5V,那么一次谐波的最大值1.5*2/π=0.95496,那么电路要至少提供-20log(0.95496/0.0007324V)=-63dB衰减

这里使用的PWM是F=20KHz

如果是一阶RC滤波,那截止频率Fs的计算由-10*log[1+(F/Fs)^2]=-63dB,得Fs=14Hz

如果是二阶RC滤波,那截止频率Fs的计算由-20*log[1+(F/Fs)^2]=-63dB,得Fs=532Hz

参数RC选择:

这里使用二阶低通滤波器,Fs=1/2πRC,得R=1KΩ,C=300nF(这里是由设计者选取),(R11=R12=R,C3=C4=C),这个RC乘积是个定值,至于R  C选择组合,可根据实际应用来确定,但是有一个思路:R或C不能太小,比如R取很大时,C必然取小,这时由于电路的寄生效应,导致最后的等效电容增大比例很多,会影响滤波效果,这样就不行了;反过来选取R一样

一阶二阶对比,除了电路上不同;计算的截止频率差别也是很大

二阶衰减比一阶严重一点、但是二阶延迟较小,而且一阶纹波大

4.电路仿真及波形数据-二阶滤波器

因为实际负载工作电流范围:0-1A,故而电流电阻上的电压范围0-1.5V

参数说明:这里使用Cadence OrCAD电路仿真功能

V1是输出最小电平

V2是输出最大电平,实际在V1-V2之间选择来试验

TD是PWM波延迟时间

TR是边沿上升时间

TF是边沿下降时间

PW占空比

PER周期

由图可知绿色波形在t=3-4ms时达到稳定,最大有3-4ms的延迟(按照100%计算)

实际的RC参数确定,要根据输出的延迟时间、纹波大小来综合考量;当然这个只是仿真,到实际硬件电路中,你会发现还要有更改

仿真波形中,你会发现滤波后的波形会有衰减,这个要进行补偿

5.硬件实验波形及数据

最后选定参数R=1kΩ、C=220nF 实际硬件测得的波形如下:

仿真结果如下:

对比波形,仿真和实际硬件测试基本上一致

PWM波转DC直流之二阶RC低通滤波器设计相关推荐

  1. 一阶RC和二阶RC低通滤波器

    一阶RC和二阶RC低通滤波器 RC电路原理推导 一阶RC低通滤波电路 二阶RC低通滤波电路 RC电路原理推导 因为最近有做一些RC滤波电路的东西,这部分内容都是在大学本科的时候学习的,很多东西也记得不 ...

  2. 比较器应用三:占空比可调的PWM波

    本文章产生占空比可调的PWM波主要原理是直流波和三角波通过比较器比较,从而比较器输出端输出PWM波,通过图1来说明. 假设三角波接入比较器的负输入端,直流波接入比较器的正输入端,即当直流波大于三角波时 ...

  3. RC低通滤波器截止频率公式推导

    一阶RC低通滤波器 一阶RC滤波器如图所示,电阻RRR串联电容CCC,输入电压记为UiU_iUi​,输出电压记为UoU_oUo​,电容容抗记为Xc=1jωcX_c=\frac{1}{j\omega c ...

  4. PWM通过RC低通滤波器模拟DAC

    当我们电路需要DAC而单片机并没有DAC外设时,则可采用PWM通过RC低通滤波器来模拟实现DAC功能. RC低通滤波器 当采用低通滤波器模拟DAC时,PWM频率应远大于RC低通滤波电路的截止频率fc= ...

  5. arduino利用三种方法产生pwm波使用l298n驱动12v小车电机(附电路连接图和pwm详解)

    前段时间参加硕士复试,有一道题是pwm是什么,如何产生pwm,录取成功后接下来在这里写一下吧! 1.脉冲宽度调制(PWM)是一种对模拟信号电平进行数字编码的方法,由于计算机不能输出模拟电压,只能输出0 ...

  6. pwm波如何控制电机代码_PWM波控制720电机

    详细方案四:pwm与720电机控制 电机硬件分析 什么是电机? 电机(俗称"马达")是指依据电磁感应定律实现电能转换或传递的一种电磁装置.它的主要作用是产生驱动转矩,作为用电器或各 ...

  7. STM8学习笔记---定时器输出7路PWM波

    STM8S003F3P6单片机共有三个定时器定时器1.定时器2.定时器4.其中定时器1为16位高级定时器,定时器2为16位通用定时器,定时器4为8位基本定时器.定时器1和定时器2可以输出PWM波.其中 ...

  8. 电池SOC仿真系列-基于遗忘因子的最小二乘法电池参数辨识(二阶RC)

    基于遗忘因子的最小二乘法电池参数辨识   最小二乘法是系统辨识中最常用的一种估算方法.为了克服最小二乘法存在"数据饱和"的问题,我们通常采用含有遗忘因子的递推最小二乘法(Forge ...

  9. stm32+定时器PWM波+电机驱动+直流电机

    利用stm32单片机控制直流电机. 硬件部分:stm32f103c8t6.TB6612电机驱动模块.直流减速电机 首先搞明白原理.例如一个12v的直流电机,在其两端接上12v的电压,电机会满额转动,转 ...

  10. 张飞硬件开发视频第五部电路详细讲解,纯硬件也可以做PWM波

    学习了张飞老师的硬件开发视频,把这一部的电路拿出来写一下. 项目的目的我就不写了,主要写一下硬件电路.分析一下这一个电路是怎么样工作的. 首先是电源部分,左边是用了一个三极管和一个稳压管搭建的稳压电源 ...

最新文章

  1. 关于MySQL的四种事务隔离级别!
  2. nightwatchjs --Expect element to not include text
  3. linux 软件包的安装
  4. vs2017 release模式断点调试
  5. 从零开始学习docker(十六)Swarm mode 创建集群
  6. border 外边框
  7. 公交车座椅上有个洞,竟是为了…很多人都不知道
  8. kotlin之plus、copyOf、reverse、forEach、filter、map、reduce、fold等函数解释和使用
  9. python中难的算法_Python算法很难吗?python神书《算法图解》PDF电子版分享给你
  10. 关于Zookeeper的几个问题
  11. HDU 5769 Substring(后缀数组)
  12. oracle中冗余,各位有没有检查冗余索引的脚本
  13. 消息驱动式微服务:Spring Cloud Stream RabbitMQ
  14. paip.提升用户体验----gcc c++ JIT-debugging 技术
  15. 【优化算法】哈里斯鹰算法(HHO)【含Matlab源码 1309期】
  16. javaBean本质
  17. MIPS体系结构简介
  18. mysql heartbeat_mysql管理工具之pt-heartbeat
  19. 不是因为有了互联网,才有了互联网思维
  20. 十六进制转八进制(十六进制转十进制,十进制转八进制)

热门文章

  1. 飞行的小鸟(Flybird)C语言小游戏C++简单小程序超简单
  2. vue中 jsbarcode的使用技巧
  3. tcl脚本中list(列表的用法)附举例说明
  4. 【f1c200s/f1c100s】全志f1c200s开发板设计(含原理图和PCB)
  5. 序章:企业潜规则认知
  6. 3d建模渲染效果图步骤
  7. python爬贴吧回复内容_Python爬虫_获取贴吧内容
  8. Origin 2021 创建双y轴
  9. 杰理AC692X系列---关于692x及693x的打开在线调EQ功能(4)
  10. 宏晶STC单片机使用STC-ISP串口烧录失败的解决方法及实例汇总 (Ver0.99.15)