电容检测电路配置,如何处理低频和高频噪声?

描述

 本文介绍了一些基本的电容检测电路配置,并讨论了如何处理低频和高频噪声。让我们看一下这个简短的视频,并首先回顾一些关于电容式传感器的基本知识。

 一、衡量变化

  电容式触摸传感的本质是物体接近电容器时发生的电容变化。手指的存在使电容增加

  1)引入介电常数相对较高的物质(即人肉)

  2) 提供一个导电表面,与现有电容器并联产生额外的电容。

  右!电容变化这一事实并不是特别有用。为了实际执行电容式触摸传感,我们需要一个能够以足够精度测量电容的电路,以一致地识别手指的存在引起的电容增加。有多种方法可以做到这一点,有些非常简单,有些则更复杂。在本文中,我们将介绍实现电容检测功能的两种通用方法;第一个基于RC(电阻电容)时间常数,第二个基于频移。

  二、RC时间常数

  当第一次意识到高等数学实际上与代表充电或放电电容器两端电压的指数曲线有某种关系时,我体验到一种模糊的大学怀旧感。也许这是我第一次意识到高等数学实际上与现实有某种关系,或者在这个葡萄收获机器人的时代,放电电容器的简单性很有吸引力。无论如何,我们知道当电阻或电容发生变化时,这种指数曲线会发生变化。假设我们有一个RC电路,由一个1

MΩ电阻和一个电容式触摸传感器组成,典型的无指电容为10 pF。

  电容检测

  我们可以使用通用输入/输出引脚(配置为输出)将传感器电容充电至逻辑高压。接下来,我们需要电容器通过大电阻放电。重要的是要了解,您不能简单地将输出状态切换到逻辑低电平。配置为输出的I/O引脚将驱动逻辑低电平信号,即,它将为输出提供与接地节点的低阻抗连接。因此,电容将通过这种低阻抗快速放电,如此之快,以至于微控制器无法检测到电容微小变化产生的细微时序变化。我们需要的是一个高阻抗引脚,它将迫使几乎所有电流通过电阻放电,这可以通过将引脚配置为输入来实现。因此,首先将引脚设置为逻辑高电平输出,然后通过将引脚更改为输入来启动放电阶段。产生的电压将如下所示:

  电容检测

  如果有人触摸传感器,从而产生额外的3 pF电容,则时间常数将增加,如下所示:

  电容检测

  按照人类标准,放电时间没有太大区别,但现代微控制器肯定可以检测到这种变化。假设我们有一个时钟频率为 25 MHz

的计时器;当我们将引脚切换到输入模式时,我们启动计时器。我们可以使用这个定时器来跟踪放电时间,方法是将同一引脚配置为启动捕获事件的触发器(“捕获”意味着将定时器值存储在单独的寄存器中)。当放电电压超过引脚的逻辑低阈值(例如0.6

V)时,将发生捕获事件。如下图所示,阈值为0.6 V时的放电时间差为ΔT = 5.2 μs。

  电容检测

  定时器时钟源周期为 1/(25 MHz) = 40 ns,此 ΔT 对应于 130

个时钟周期。即使电容的变化减少了10倍,未接触的传感器和触摸的传感器之间仍然会有13个刻度的差异。

  所以这里的想法是在监控放电时间的同时对电容器反复充电和放电;如果放电时间超过预定阈值,微控制器假定手指与触敏电容器“接触”(我把“接触”放在引号中,因为手指从未真正接触过电容器——如上一篇文章所述,电容器通过阻焊层和器件外壳与外部环境隔开)。然而,现实生活比这里提出的理想化讨论要复杂一些;错误来源将在下面的“处理现实”部分中讨论。

  三、变频电容

  在基于频移的实现中,电容式传感器用作RC振荡器的“C”部分,因此电容的变化会导致频率的变化。输出信号用作计数器模块的输入,该计数器模块计算特定测量周期内出现的上升沿或下降沿的数量。当接近的手指导致传感器电容增加时,振荡器输出信号的频率会降低,因此边沿数也会减少。

  所谓的松弛振荡器是可用于此目的的通用电路。除了触敏电容外,它还需要几个电阻和一个比较器;这似乎比上面讨论的充电/放电技术要麻烦得多,但是如果您的微控制器具有集成的比较器模块,则还不错。

  我不打算详细介绍这个振荡器电路,因为1)它在其他地方讨论,包括这里和这里,2)当有许多微控制器和分立IC提供高性能电容触摸感应功能时,你似乎不太可能想要使用振荡器方法。如果您别无选择,只能创建自己的电容式触摸感应电路,我认为上面讨论的充电/放电技术更简单。否则,通过选择具有专用电容感应硬件的微控制器,使您的生活更简单一些。

  Silicon Labs 的 EFM32 微控制器中的电容检测外设是基于松弛振荡器方法的集成模块的示例:

  电容检测

  多路复用器允许振荡频率由八个不同的触敏电容器控制。通过快速循环通道,芯片可以有效地同时监控八个触摸感应按钮,因为微控制器的工作频率相对于手指移动的速度非常高。

  四、现实

  电容检测

  我们必须注意到,电容式触摸感应系统将受到高频和低频噪声的困扰。

  高频噪声会导致测量的放电时间或边沿计数的样本间差异很小。例如,上面讨论的无指充电/放电电路的放电时间可能为 675 个时钟周期,然后是 685

个时钟周期,然后是 665 个时钟周期,然后是 670 个时钟周期,依此类推。这种噪声的重要性取决于预期的手指引起的放电时间变化。如果电容增加 30%,则 ΔT

将为 130 个刻度。如果我们的高频变化只有大约 ±10 个刻度,我们可以很容易地区分信号和噪声。

  然而,电容增加30%可能接近我们合理预期的最大变化量。如果我们只有 3% 的机会,则 ΔT 为 13

个即时报价,这太接近本底噪声了。降低噪声影响的一种方法是增加信号的幅度,您可以通过减少PCB电容器和手指之间的物理间隔来做到这一点。但是,机械设计通常受到其他因素的限制,因此您必须充分利用您获得的任何信号幅度。在这种情况下,您需要降低本底噪声,这可以通过平均来实现。

  例如,每个新的放电时间可以不与以前的放电时间进行比较,而是与过去 4 次、8 次或 32

次放电时间的平均值进行比较。上面讨论的频移技术自动包含平均,因为平均频率周围的微小变化不会显着影响相对于振荡周期较长的测量周期内计数的周期数。

  低频噪声是指无指传感器电容的长期变化;这些可能是由环境条件引起的。这种噪声无法平均,因为这种变化可能会持续很长时间。因此,有效处理低频噪声的唯一方法是适应性强:用于识别手指存在的阈值不能是固定值。相反,应根据不表现出显着短期变化的测量值(例如由手指接近引起的测量值)定期进行调整。

  总而言之,我们注意到电容式触摸传感不需要复杂的硬件或高度复杂的固件。尽管如此,它是一种多功能、强大的技术,与机械替代品相比,可以提供重大的性能改进。

打开APP阅读更多精彩内容
声明:本文内容及配图由入驻作者撰写或者入驻合作网站授权转载。文章观点仅代表作者本人,不代表电子发烧友网立场。文章及其配图仅供工程师学习之用,如有内容侵权或者其他违规问题,请联系本站处理。 举报投诉

全部0条评论

快来发表一下你的评论吧 !

×
20
完善资料,
赚取积分