如何设计可靠的电容式触摸接口作者:Sachin Gupta, Prakhar Goyal,
和 Kurian Polachan,赛普拉斯半导体
直观且耐用的电容式感应接口在许多电器(也称为“白色家电”)和仪表中替代了机械零件,提高了产品的可靠性。由于广泛应用于消费电子设备,用户对于这些接口的可靠性和准确性要求较高。
然而,由于电容技术会受到环境噪声和其它的因素影响,可能导致系统无法响应手指摸触或者产生错误触摸。如果开发人员没有很好的调试传感器,那么会严重降低准确性和可靠性。了解电容式传感器的工作原理并设计出可自行补偿噪音的传感器,开发人员就可以建立起稳定的系统,提高设计的可靠性、性价比和易用性。
电容式感应
解决可靠性用户接口设计所面临的挑战首先需要大概了解电容式测量系统的相关技术。图1显示了一个电容式传感器板的横截面。
图1:电容式传感器板的横截面
要感应到手指的存在,电容式感应系统首先要知道没有手指时的传感器电容(见图2a),也称为寄生电容(Cp)。当手指接近或接触传感器时(见图2b),传感器电容值将会变化,这就产生了和Cp并联的另一个电容,称为手指电容(Cf)。有手指存在时,总传感器电容(Cx)如方程1所示:
Cx = Cp +_ Cf (方程1)
图2(a):没有手指时的传感器电容 (b):手指存在时的传感器电容
为了能够使用微控制器来分析传感器电容,传感器电容(Cf)需要转换成数字值。图3显示了其中一种电容式感应预处理电路框图。(注:有多种测量传感器电容的方法。)
图3:电容测量预处理电路
该系统使用一个开关电容模块模拟传感器电容Cx、一个电阻Req、一个可编程电流源(IDAC)、一个外部电容(Cmod)以及一个精确模拟比较器。IDAC不断给Cmod充电,直到Cmod电压达到Vref,比较器输出高电平。然后断开IDAC,Cmod通过Req放电,直到Cmod电压低于Req。比较器的出低电平,一直保持到Cmod又给Vref充电。手指存在时Cx将变大,根据方程2将等效于Req变小:
Req = 1/FsCx (方程2)
这里Fs是开关电容模块的开关频率。
因此,当手指存在时,Cmod放电加快,比较器输出保持高电平的时间较短。这意味着对于比较器来说,更高的电容值对应短时间。在固定时间内,产生的码流可输入至计数器。该计数器值或“原始计数”提供了Cx大小的参考。
在固定时间内计数器的计数,也决定了原始计数的数目,可以称为分辨率。当分辨率增加时,计数器计数时间较长,这就增加了原始计数。换句话说,分辨率也是可能的原始计数的最大数目。
调试
图4显示了电容式触摸接口的设计流程。然而,在实际运用中,部件变化、运行环境及噪声都会影响传感器的性能和可靠性。
图4:触摸感应接口设计流程
调试是一个关键的步骤,用来确保传感器能正常和持续运作。通过调试传感器一系列参数的最佳值来保证足够的信噪比(SNR)和手指阈值。一般说来,满足传感器设计可靠性的最低要求是达到5:1的信噪比(见图5)。为了避免大气变化引起电容变化造成的假触发,建议手指阈值为信号强度的65-80%之间,以确保可靠的手指检测。
图5:原始传感器数据由手指响应和噪音构成。手指响应,也称为信号强度,是当手指放在传感器上时通过感应系统可以看到的原始计数的差别
传感器控制器生产厂商会在调试过程中提供指南来帮助工程师,确保系统达到理想的参数。电容式感应算法的传感器控制器实现过程类似图3,调试过程将按照如图6显示的步骤。
图6:调试电容感应系统
开发人员可以通过如下方式实现参数调试:可以在固件里根据传感器具体操作编写代码(通外部元件)或者配置控制器。使用固件方法比较弹性,但当参数调试需要改变时,固件也需要修改和更新。
设计者也可通过使用固定功能/不可编程的电容式传感器控制器来简化系统固件开发。在这种情况下,参数调试必须使用板上外部组件实现或通过通信接口(如)发送配置数据。
使用这种方法时,每当调试参数需要改变,要么需要把用户接口板返工要么需要更新配置数据信息。开发人员需要注意的是:调试可能是费时的,尤其是PCB或覆盖物需要反复改变时。
生产调试
电容式传感器的性能很大程度上依赖于传感器板的物理性质/特征和环境/操作条件。例如,传感器性能会受由PCB制造过程变化引起的传感器电容变化的影响,无论是覆盖材料、厚度变化,还是PCB供应商的变化。
挑战还不仅仅与此。寄生电容也会随环境条件(噪声平面)变化而变化,如温度及湿度。因此,一个在阿尔卑斯山调试好了的板子可能在炎热潮湿的香港不能工作,这就要花费更多的时间和劳动来重新调试一次。为了使由于生产过程的变化或供应商改变引起的合格率降低的问题减至最小,需要根据统计分析来在调试中加入预期的差异。
还有其他原因需要重新制作PCB,例如改变一个按钮大小,根据原理图的变化移动PCB上的走线,重新设计PCB尺寸来解决不同的EMC/EMI问题等等。所有的这些修改都需要将传感器重新调试一次。此外,调试过程需要通信协议和主处理器观察和分析原始传感器数据。由于最后一版后还需要调试,故需要额外的I/O来解决系统潜在的问题。
调试工作需要很多芯片相关的专业知识和经验,并理解电容式感应在低电平信号的影响。在对上市时间要求比较严格的电器市场,调试可能大大延迟上市时间从而增加系统成本。
为了做到有效的成本控制并满足市场需求,最有效地调试办法就是电器本身来控制。理想的自调试系统所要完成的任务如图7所示。
图7:自调试电容式感应系统
在自调试电容式感应系统中,可用多种算法来实现触摸感应系统。基本上来说,电器自调试和手动调试没有什么不同。如图7所示,有些任务一上电就会执行完毕(一次补偿),而有些必须不断执行(动态补偿)。
一次补偿
自调试电容式感应系统必须基于电器和预期的操作环境为传感器计算最佳参数设置。
时钟:本文提到的电容式感应系统是基于开关电容原理的。相反,物理上的传感器电容通过在连续周期内给传感器电容充放电模拟成了电阻。模拟电阻和传感器电容值成正比,可以用电流源和一个数模转换器来计算传感器电容实际值。
恰当的等校电阻要求传感器电容在一个频率下充放电,要有足够的时间让电容完全充放电。因此,开关频率应该依照绝对传感器电容来调整,如果传感器电容较高应该降低频率。
分辨率: 因为系统将传感器电容转化为计数,可以测量的最小电容变化取决于系统的分辨率。所需的分辨率可以使用寄生电容和所需的灵敏度来计算。
扫描时间:从系统规格方面来看,这是一个至关重要的调试参数。然而,随着扫描分辨率的提高,系统的噪声将会增加。为了弥补噪声的加大,传感器的扫描时间必须“拉长”来整合噪声,降低其对电容测量的影响。
自调试算法必须小心,因为它不会超过系统要求外的扫描时间。最好的扫描时间处理方式就是布板时保持寄生电容尽可能低。
IDAC值:在选择扫描分辨率之上,传感器基线测量(即当手指不存在时的原始计数)必须自动调整接近最大计数的80%,以确保环境条件和芯片参数变化都不会影响传感器测量精度或检测手指触摸的准确性。
动态补偿
噪声是一个随机时间函数,由其自身性质决定。工作一个小时后和刚开机时是不一样的,下一个时刻又不相同。因此,手指检测的阈值应基于传感器原始计数检测到的噪声来调整。图8显示了自调试系统如何基于系统噪声调整手指阈值。
图8:基于噪声动态调整手指阈值
电器自调试实施的稳定性、可靠性和效率主要取决于两个因素:信噪比和扫描时间。确保自调试传感器和Cp的信噪比总是在最低要求5:1之上,以保证稳定性和可靠性。扫描时间会影响自调试算法的电源效率,这是由于如果需要扫描传感器的时间更长,就会消耗更多的功耗。虽然更长的扫描时间也许适合应用需求,但自调试算法需要在不影响信噪比的情况下最大限度地减短扫描时间来减少功耗。
在初始设计阶段通常会忽略的一个最重要的因素是线路板布局,线路板布局会影响整个系统的性能。寄生电容会影响到调试的程度、产品合格率、扫描时间以及其它一些系统特性。
设计布局时应遵循由控制器生产厂家提供的指南,以减少传感器的寄生电容。这些指南可以用来改善系统的性能,通过自调试可以帮助开发人员应对不断变化的市场需求。例如,赛普拉斯提供了SmartSense自调试电容感应解决方案,其可以自动优化扫描速度,当功耗变低时也可以保持尽可能快的扫描速度,并且保持信噪比高于5:1,以避免任何错误触发。
自调试控制器免去了基于电器规格和操作条件的变化所需的反复电容式感应调试。在某些极端的例子中,一个传感器的寄生电容可能会很高,需要外部元件和手动调试来使电容保持在一个典型的范围。
对于开发人员在电器和其他系统实现电容感应,手动调试是一个明显的挑战。由于生产过程的差异,需要根据不同批次来调试,无论是因为线路板根据需求重新设计(例如,覆盖物厚度或按钮大小),还是由于噪声/干扰问题。
调试会改善系统性能和可靠性,如果使用手动调试会增加成本并延迟产品发布。控制器自调节方案会免去这些成本和延迟,开发人员不必成为电容信号专家就可以快速实现可靠的系统。
|