ADC采样效应及相关影响解剖

在前述文章,BUCK电路模拟补偿器的数字化过程 ,我们讨论了模拟补偿器的数字化,事实上,数字化过程的第一个重要的环节就是ADC对反馈量的采样,本文就重点探讨一下由于ADC采样频率带来的一些问题,进而讨论一下相应的解决方案。

一.ADC采样频率对电源环路带宽的影响

e497d2ac397d64796f506f0f39e53d74.png

图1 ADC采样的基本结构

在ADC模块中,一般会经过合适的时钟选择及分频,产生一个合适的时钟作为ADC采样及转换的时钟频率,并且会有一个电源作为ADC转换的参考电源,对模拟信号进行量化,比如AVDD 3.3V。ADC模块包含专用ADC内核和共享ADC内核,专用ADC内核固定接某一个ADC的采样通道,对采样时间要求不高,而共享ADC内核会接不同的ADC采样通道,这必然会涉及到ADC通道的切换。在图1中,我们可知,模拟信号从ADC采样通道进去后,会进行采样,这会产生一定的延时,而采样后的信号会经过ADC转换,这也会消耗一定的时间,最终它的结果会送到ADCBUF寄存器去被软件处理,或者被数字滤波器或者数字比较器所用。关于ADC的具体性能,我们在后面的文章中会详细讨论,此处不做过多探讨。

1e7bdd6de70678e467ed37f94ad96cfe.png

图2 ADC的采样含义

一般来说,ADC的采样转换,需要一定的触发信号,当发生触发时,ADC或者开始直接转换,或者开始采样并采样结束后转换,这和ADC通道接的是专用内核还是共享内核有关。这时候表示模拟信号流逝的时间轴就不是时间的含义了,而是表示对信号的一次一次的采样,每次采样之间的时间就是ADC的采样间隔Ts,经过ADC转换后,模拟信号就被转换为了离散数字信号,这些数字基于ADC的参考电压和ADC的位数精度,来表示被采样的模拟信号的大小。

881ca50e1b9e326560ab3dee46fe5a54.png

图3 ADC的采样间隔和ADC采样转换延时

当每一次进行触发ADC后,需要一个时间来完成转换及中断申请,而后在ADC中断中从ADCBUF中得到ADC的结果,这部分时间延时,在芯片硬件上会有一些措施会让这部分延时尽可能地减小,以便给环路控制算法留出足够的时间。这里需要注意的是,在每一次采样后,一直到下一次采样之前都会保持上一次的采样结果,这就是零阶保持器ZOH.

eb75ac73fd61758da931707b3733dfb0.png

图4 ZOH的概念

百度百科对ZOH的解释,如图4所示,这是一种最简单的采样保持器,每一个采样区间之间的信号值为常值,其一阶导数为0,这就是零阶保持器的来由,它可以将数字采样信号还原回连续信号。

6e9f09ace43045dbc538bb99254731d1.png

图5 采样频率造成的相位损失

了解了ADC采样造成的延时,以及ADC采样的零阶保持器特性,我们可以看一下ADC采样在环路控制中造成的相位损失,如图5所示,当在占空比50%处进行ADC触发采样时,在绿色波形上升沿处进入控制环路计算,在下一个周期初始进行占空比的更新,则此时造成的相位损失如下式,

4928cd51cd6fb49ac58c309575901c50.png

其中fx为环路控制带宽,而fsample为采样间隔频率,所以,当采样频率相对于带宽非常大时,这个相位损失会比较小,但是现实中,采样频率只能最大设置为电源开关频率(对定频变换器而言),以确保每一个开关周期都能对占空比进行一次更新,所以为了尽可能减小ADC造成的相位损失,我们需要将带宽设为一个合适的值,如通常所建议的1/20开关频率,ADC造成的相位损失为18C.

0b0cf061b97bb41ef30df8a0cd8d4b60.png

图6 优化ADC触发时刻以优化相位损失

当我们将ADC触发时刻改为1/2的duty_off时间时,我们让占空比在下一个周期一得到计算结果后则立即更新占空比,则可以将相位损失减小为原来的一半,如下式

e4c6ce1f52ad60f8a74ed5f93cf68848.png

当建议设计fx为fsample的1/20时,则由于ADC采样导致的相位延时为9C.

二.ADC采样的混叠效应及解决方式

大家试想一下,为什么我们建议采样频率和带宽保持1/20的倍数关系呢?实际上,是由于在采样学上,有一个奈奎斯特采样定律,奈奎斯特频率代表了对应采样频率的采样能力。

采样必须以一定的速率采样,采样频表示采样的速率,当采样频率越高时,则采样到的信号越精确,当采样频率是关心的信号频率的两倍时,则信号还原后的频率不会失真,但是信号幅值会存在失真,所以在采样学上,建议采样频率为信号频率的10倍以上时,才不会引起信号幅值的明显失真。

经过上述了解,我们可知,采样频率的一半称作奈奎斯特频率,要确保信号频率不失真,我们需要信号频率低于奈奎斯特频率,要确保信号幅值不失真,则需要让关心的信号频率为奈奎斯特频率的1/5,甚至于10分之一。因此,我们建议环路带宽设置为1/20采样频率(1/10的奈奎斯特频率),减小奈奎斯特频率对相位的影响。

接下来,我们分析一下不同采样频率下信号还原的情况是什么呢?

ed4728e6630ce4a402b3610e5727a392.png

图7 高采样频率时的信号还原

当我们采用9倍于所关心频率的信号时去做ADC采样时,那么此时我们通过图7可知,采样信号被还原后比较接近原始的连续信号。

当我们采用奈奎斯特频率fn去采样所关心的频率信号时,我们发现采样后的信号,除了原有信号频率之外,在还原的信号中发现一个低频的信号,另外零阶保持后的信号幅值本身也发生了明显的失真。

4796f5baba1aedc2bbea617ce27ba0be.png

图8 较低采样频率导致的信号畸变

accf1bba7d32476bfc4458130bc308b8.png

图9 用1/2信号频率去采样信号造成的信号畸变

当我们采用一半的信号频率去采样原始信号时,发现信号发生了非常严重的幅值畸变,并且在还原信号中带入了一个明显的低频信号。

通过上述的分析,我们可以看出采样频率对准确采样并还原信号的重要性。一般来说,ADC对高于奈奎斯特频率以上的信号进行采样,都会带来一个低频假信号,而这个假信号如果被MCU所接收,那么它将做出错误的指令判断。所以,我们一定要避免它的出现。

725563ce1193d1b5deef4dd3193d833f.png

图10 混叠效应的说明

如图10所示,当我们假定采样频率为100Hz,那么对应于采样频率的奈奎斯特频率为50Hz,对所有高于50Hz的信号进行采样,都会带来一个低频假信号,如70Hz会带来30Hz,160H会带来40Hz,510Hz会带来10Hz等,真实信号的频率和混叠进来的低频信号的计算关系我们在此不进行探讨,有兴趣可以去查阅相关资料。

既然我们不希望混叠信号的发生,那么如何消除它呢?有人说,会建议用数字滤波器,但是这往往是不现实的,因为MCU无法区分低频混叠信号和真实信号,所以它将他们统统滤除,那么将有用信号滤除显然是不合理的。正确的做法,一般是尽可能在采样信号进入MCU之前就将所有高于奈奎斯特频率以上的信号滤除掉,并且具有一定的衰减,这样就不会产生混叠频率,常用的滤除方式是采用RC滤波器。

de8833d5cf6db1a9b7ea5b846b06b66f.png

图11 抗混叠滤波器设计1

ADC内部一般会有一个采样保持电容CHOLD,这个电容在规格书上能够查询得到,如图12所示,共享内核典型值为18pF,专用内核典型值为5pF,这里,我们以共享内核为例,一般推荐将滤波电容设为50-100倍的保持电容,以确保在ADC采样时,不管是对保持电容充电,还是保持电容放电,不至于影响到输入模拟信号的幅值,这对于共享内核非常重要,因为共享内核会连接到不同的输入通道上,而每一个通道的电压会有不同,如果处理不得当,会产生不同的电压通道之间产生crosstalk而导致采样错误或者降低精度。

b1c63de10678a5c85dcb9f943c4b1d02.png

图12 ADC主要结构参数

e7a012acf5d679c84a4537c2011f9875.png

图13 ADC的模拟输入通道内部结构

由ADC的内部结构,我们可知,模拟通道上面除了信号源阻抗RS之外,ADC内部还有一系列阻抗,如连接电阻RIC为300ohm,采样开关的电阻RSS为44ohm,所以这些电阻会导致给保持电容充电时间变长,为了得到准确的采样电压,需要适当加大采样时间。

d4af640b738861d0ecf2f28271d275b9.png

图14 抗混叠滤波器设计2

当滤波器电容C确定后,我们可以根据RC的转折频率来求得电阻值选择,由于采样频率是开关频率,则奈奎斯特频率就是一半的开关频率,我们希望在奈奎斯特频率处的输入信号能有20db衰减,则RC的转折频率应该设为1/10的奈奎斯特频率,如图14,可以将电阻R确定下来。

总结,通过分析ADC采样带来的两个典型问题,并且对其解决方案做了探讨,可以更好地理解对数字补偿器的设计。

//关于知识产权:

1.本公众号主要用于个人学习笔记归纳及分享,无任何商业目的。

2.本公众号所发表言论及观点不代表本人现任公司及前任公司,如有错误请不吝指正。

3.欢迎随意分享转发,如需转载公众号内容,请留言告知。

4.有些图片来自网络,如有侵权,请联系删除。

fabff0d25a2033f8c21ac20c24523d3b.gif

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

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

相关文章

2012.2.9日晚亚马逊的一个错误链接截图

1现在时间 2 问题链接 http://www.amazon.cn/%E5%81%A5%E8%BA%AB%E5%99%A8%E6%A2%B0/b/refsa_menu_sef7?ieUTF8&node42787071 3 点击后结果 http://www.amazon.cn/gp/product/B0073RWUQA/refs9_hps_bw_g200_ir05?pf_rd_mA1AJ19PSB66TGU&pf_rd_scenter-5&pf_rd_r0…

深漂结束

早上起来看了勇士和凯尔特人的比赛,勇士还不能适应凯尔特人的防守,除了防守之外,凯尔特人这场比赛的三分球着实太高了。说到篮球,突然想起一个刚离开深圳去惠州工作的朋友。上周二中午,吃饭的时候我打开手机&#xff0…

嵌入式软件是这样debug的

【单步调试】【多线程调试】调试过多线程的都懂的。【断点调试】【递归调试】调试过递归代码的都有这种耳鸣目眩的感觉。【老旧代码调试】对于早期已经缝缝补补的庞大软件代码进行调试,还不如推倒重来。【生产中代码调试】【用户等待调试结果】【掩耳盗铃式调试】【…

声音与年龄

大家好,我是写代码的篮球球痴,最近一年一直从事音频相关的工作,今天刚好看到卓老师的一篇和声音相关的文章,分享给大家。摘要:今天布置了这学期信号与系统的小论文作业。有参加了上海中学生的科技节作品评选。他们的一…

系统字体的Regular、Light等几种名称的区别

以苹果系统中的PingFang SC系列字体为例,其中常见的有下面几种类型可以细分如下。 PingFang SC ExtraLight 苹方 特细 PingFang SC Light 苹方 细体 PingFang SC Regular 苹方 常规 PingFang SC Medium 苹方 中等 Pi…

使用 servlet 连接数据库

1.项目工程 web.xml 配置 1 <servlet> 2 <description>This is the description of my J2EE component</description> 3 <display-name>This is the display name of my J2EE component</display-name> 4 <servlet-name>DBSer…

我用涂鸦模块做的报警系统

在上次发的涂鸦的文章之后涂鸦的这套宠物SDK设计&#xff0c;真香最近刚好有一个朋友需要做一个DEMO&#xff0c;这个DEMO是和图像识别相关的&#xff0c;我这个朋友在一个烟火报警的设备&#xff0c;大家都知道我们住的小区里面都会有一个监控系统吧&#xff0c;监控系统里面是…

二叉树的非递归操作

这里涉及到二叉树的非递归操作有&#xff1a;先序遍历、中序遍历、后序遍历数据结构树结点&#xff1a;structNode { chardata; Node *left; Node *right; };标志&#xff1a;enumTag{goLeft, goRight, goBack };goLeft指示访问左子树goLeft指示访问右子树&#xf…

建立公司

最近标哥说有创业的想法&#xff0c;然后我帮忙搜了下关于创办公司的一些文章&#xff0c;晓宇的这篇文章把创业的过程写了个大概&#xff0c;也分享给大家&#xff0c;如果有创业想法的&#xff0c;按照这样的思路去寻找自己的合伙人。 自从17年4月份开始辞职创业&#xff0c;…

第五节 CImage和CBmp(二)

由于这个库主要用于VC MFC下开发应用&#xff0c;因此目前可以下载到版本只支持MFC开发。如果您需要标准Win32的库&#xff0c;可以在回复时留下您的邮箱&#xff0c;或跟我联系。Email&#xff1a;wuchunlei163.comQQ&#xff1a;819543772EasyAnalysis图像分析库测试版以及源…

Linux 新系统易用性向 Windows 看齐

大家好&#xff0c;今天是一年一度的高考&#xff0c;不知道各位在多年以前有没有后悔选择电子专业&#xff0c;如果再给你一次机会&#xff0c;你会选择其他专业吗&#xff1f;以下是内容正文&#xff0c;由黄工整理&#xff01;来源 | 网络嵌入式开发&#xff0c;很多工程师都…

深度剖析SOC高性能实时事件关联分析引擎

【引言】安全管理平台&#xff08;SOC&#xff09; 的一项关键技术就是事件关联分析。借助实时的事件关联分析引擎&#xff0c;安全管理平台能够发掘出复杂的海量安全日志和事件背后隐藏的信息&#xff0c;引导安全管理人员发现外 部***和内部违规行为。作为本系列的第五篇文章…

靠,嘉立创打板又降价

说个题外话&#xff0c;我前段时间和同事聊天&#xff0c;我同事是一个项目经理&#xff0c;我跟他说我有朋友在嘉立创&#xff0c;然后随口说了句&#xff0c;我们这个行业应该没有不知道嘉立创的吧&#xff0c;我同事回了一句&#xff0c;什么是嘉立创&#xff0c;然后我愣了…

拆解一个比亚迪的车钥匙,这个黑黑的元器件是什么?

今天抽屉突然找到一个比亚迪的车钥匙&#xff0c;寻思着没事拆开看看用什么方案做的。正面照&#xff0c;哪款车型的&#xff0c;不知道了背面照&#xff0c;很简洁&#xff0c;只有一个BYD的Logo接下来就是撬开了&#xff0c;过程非常顺利&#xff0c;之前撬开一个宝马车的钥匙…

分布式事物(同样适用于dubbo事务等分布式事务)

转载于:https://www.cnblogs.com/tian1993/p/10081901.html

一些web开发中常用的、做成cs文件的js代码 - 搜刮来的

using System;using System.Web;using System.Web.UI;namespace COCOWO.COMP{ /// <summary> /// 一些常用的Js调用 /// 创建时间&#xff1a;2006-8-3 /// 创建者&#xff1a;马先光 /// </summary> public class Jscript { …

库里扛起了勇士对凯尔特人的第四场

最近临近毕业季&#xff0c;有朋友这样说「我一定是要支持勇士的&#xff0c;毕竟库里和詹姆斯陪了整个大学四年啊」。昨晚上加班到11点半&#xff0c;到家洗完澡已经是凌晨1点了&#xff0c;那时候是想得很清楚的&#xff0c;明天是不想被其他事情打扰我看球赛的。这场比赛&am…

Nginx应用案例分享:压力测试

2019独角兽企业重金招聘Python工程师标准>>> 在运维工作中&#xff0c;压力测试是一项非常重要的工作。比如在一个网站上线之前&#xff0c;能承受多大访问量、在大访问量情况下性能怎样&#xff0c;这些数据指标好坏将会直接影响用户体验。 但是&#xff0c;在压力…

声音是什么?

转自博客园《【秒懂音视频开发】02_重识声音》&#xff0c;https://www.cnblogs.com/mjios/p/14466418.html#5035688#!comments声音的产生声音&#xff08;Sound&#xff09;&#xff0c;是由物体的振动产生的。一切正在发声的物体都在振动。我们说话的时候&#xff0c;是声带在…

[源码和文档分享]基于C语言的语法高亮设计与实现

一 需求分析 在所需高亮的关键字或字符串前后加上class标签&#xff0c;在css定义颜色。 二 程序设计 2.1 设计思路 把.html文件和.css文件中的内容存在两个字符数组中&#xff0c;在.cpp用文件操作写入。 2.2 文件组织架构 Syntax highlighting.exe所在目录为根目录 源代码命…