触摸传感器已经被广泛使用很多年了。但近期混合信号可编程器件的发展,让电容式触摸传感器已成为各种消费电子产品中机械式开关的一种实用、增值型替代方案。
典型的电容式传感器覆盖层的厚度为3mm或更薄。随着覆盖层厚度的增加,手指触摸的传感将变得越来越困难。换句话说,伴随着覆盖层厚度的增加,系统调整过程将必须从科学向艺术发展。为了说明如何制作一个能够提升目前技术极限的电容式传感器,本文所述的实例中选用玻璃覆盖层的厚度为10mm。玻璃使用简单,随处可见,而且是透明的,所以你可以看到下面的感应垫。玻璃覆盖层还可直接应用于白色家电。
手指电容
任何电容式触摸传感系统的核心都是一组与电场相互作用的导体。人体皮肤下面的组织中充满了传导电解质---这是一种有损电介质。正是手指的这种导电特性使得电容式触摸传感成为可能。
简单的平行板电容器有两个导体,这两个导体之间隔着一层电介质。该系统中的大部分能量直接聚集在电容器极板之间。少许能量会泄露到电容器极板以外的空间,而由这些泄露能量所形成的电场叫做边缘场。制作实用电容式传感器的部分难题在于需要设计一套印刷电路板轨线,来将边缘场引导到用户易接近的有效感应区域中。平行板电容器不是这种传感器模式的理想选择。
当把手指放在边缘电场的附近时,电容式传感系统的导电表面积会增加。由手指所产生的额外电荷存储容量,就是我们所知的手指电容CF。在本文中,无手指触摸时的传感器电容用CP来表示,意指寄生电容。
关于电容式传感器人们常有这样的误解:为了使系统正常工作,手指必须接地。实际上,手指之所以被传感是因为它带有电荷,而与其是否悬空或接地完全无关。
传感器的PCB布局
图1显示了一块PCB的顶视图,该PCB应用了本设计案例中的一个电容式传感器按键。
图1:PCB顶视图。
这个按键的直径为10mm,相当于一个成人指尖的平均尺寸。为该演示电路而组装的PCB带有4个按键,其中心相隔20mm。如图1中所示,接地平面也位于顶层。金属感应垫和接地平面之间设置了一个均匀的隔离间隙。该间隙的尺寸是一个重要的设计参数。如果间隙设置得过小,则过多的电场能量将直接传递至地。而如果间隙设置得过大,则将无法控制能量穿越覆盖层的方式。将间隙尺寸选为0.5mm,可以很好地使边缘场透过10mm厚的玻璃覆盖层。
图2展示了同一种传感器模式的截面图。
图2:传感器的PCB和覆盖层截面图。
如图所示,PCB上的一个过孔将金属感应垫与电路板底面上的印制导线相连。当电场试图找到最短的接地路径时,介电常数εr将影响进入材料中的电场能量的密度。标准玻璃窗的εr约为8,PCB的FR4材料的εr约为4,而白色家电中常用的耐热玻璃的εr大约为5。本设计案例中采用的是标准的窗玻璃。需要注意的是,在PCB上贴有玻璃纸,即3M公司的468-MP绝缘胶膜。
电容式传感系统101
该电容式传感系统的基本元件包括:一个可编程电流源、一个精密模拟比较器和一根用来按顺序传输一组电容式传感器信号的多路复用总线。在本文所讨论的系统中,一个弛张振荡器起着电容传感器的作用。该振荡器的简化电路示意图如图3所示。
图3:电容式传感弛张振荡器电路。
比较器的输出被送进脉冲宽度调制器(PWM)的时钟输入电路,这个PWM对一个时钟频率为24MHz的16位计数器进行门控。传感器上面的手指使电容增大,进而导致计数值增加。手指的存在就是基于这一原理来检测到的。图4展示了该系统的典型波形。
图4:电容式传感弛张振荡器电路的波形。
该设备的实现原理图如图5所示。
图5:电容式传感电路原理图。
为了实现电容式传感和串行通信,该电路采用了赛普拉斯的CY8C21x34系列中的PSoC IC芯片。该芯片包含一组模拟和数字功能块,这些功能块可由存储于板上闪存中的固件来配置。另一颗芯片负责处理RS232的电平移位,以便建立到主机的通信链接,并实现波特率为115,200的电容式传感数据记录。四个电容传感按键的引脚分配在图5的表中给出。PSoC是通过一个包含电源、地以及编程引脚SCL和SDA的ISSP接头来实现编程的。而通过一个DB9连接器将电脑与电容式传感电路板相连。
调整传感器
每次调用上列程序中的调用函数CSR_1_Start()时,均对Button1的电容进行测量。原始计数值被存储于CSR_1_iaSwResult[ ]阵列中。用户模块还跟踪一个用于原始计数的基线。每个按键的基线值均为一个由软件中的IIR滤波器进行周期性计算的平均原始计数值。IIR滤波器的更新速率是可编程的。基线使得系统能够适应于由于温度和其它环境影响而引起的系统中的漂移。开关差分阵列CSR_1_iaSwDiff[ ]包含消除了基线偏移的原始计数值。利用开关差值来决定按键目前的开/关状态。这可使系统的性能保持恒定,即便在基线有可能随着时间的推移而发生漂移的情况下也是如此。图6显示了固件中实现的差分计数与按键状态之间的转移函数。
图6:差分计数与按键状态之间的转移函数。
该转移函数中的延滞带来了开关状态之间的快速转换,即使计数是有噪声的情况下也不例外。同时这还给按键带来了一种反跳功能。低门限被称为“噪声门限”,而高门限则被称为“手指门限”。门限水平的设定决定了系统的性能。当覆盖层非常厚时,信噪比很低。在此类系统中设定门限水平是一项具有挑战性的工作,而这恰好是电容式传感设计技巧的一部分。
图7展示了一个持续时间为3秒的按键触压操作的理想原始计数波形。
图7:将门限水平绘制在一个去除了基线的原始计数图上。
噪声门限被设定的计数值为10,而手指门限设定的计数值则为60。实际上,在实际计数数据中噪声分量是始终存在,图中没有显示是为了能清晰地显示门限水平。
部分调整过程还包括选择电流源DAC的电平以及设置用于计数累加的振荡器周期数。在固件中,函数CSR_1_SetDacCurrent(200, 0)把电流源设定在其低电流范围内,数值为200(最高255),大约对应于14μA。函数CSR_1_SetScanSpeed(255)把振荡器周期数设定为253(255-2)。原始计数和差分计数的分析表明:该系统的寄生引线电容CP约为15pF而手指电容CF约为0.5pF。可见,手指电容使总电容产生了约3%的变化。对于每个按键,每个原始计数值的采集所需要的时间仅为500μs。