摘 要:针对目前市场上应用于发光二极管(LED)显示屏上的人屏互动方式多为室内小尺寸显示屏设计,对于户外大尺寸LED显示屏上的应用尚有局限性的问题,提出一种基于电容式接近感应的LED显示屏互动系统。依靠传感器激发的电场变化定位触摸的方式和分布式嵌入LED显示屏的一体化设计,突破了互动检测对环境光和显示屏尺寸要求的限制。同时针对系统使用过程中环境温度变化引起的互动感应误触发现象,提出一种自适应基值综合滤波算法以提高系统稳定性。实验结果表明:所提系统环境适应性强,检测定位准确,在大屏互动应用中有一定优势。
关键词:电容式接近感应;发光二极管(LED)显示屏;人屏互动;自适应基值综合滤波算法
0 引 言
发光二极管(light-emitting diode,LED)显示屏与互动技术的创新性结合,突破了传统LED显示屏只能单向显示信息的模式,使观众能主动地与显示屏中的内容产生交流互动。LED显示屏互动系统设计与实现的首要难题在于互动感应的检测和定位。文献[1~4]基于红外或激光探测的定位方式容易受到环境光的影响,只能在室内无强光照射下使用[5]。苏州晟迹公司研制的无框雷达眼触控屏突破了这一局限,其通过安置在显示屏周边的雷达传感器向显示屏表面发射电磁波的方式,检测触摸点的距离和角度以确定接触点在屏体上位置[6]。
本文提出一种基于电容接近感应传感器的LED显示屏互动系统,这种依靠感应电场变化检测互动的方式不受环境光照强弱影响,同时内嵌于LED显示屏的一体化设计使得系统互动检测范围不受显示屏幕尺寸限制,且触点定位十分准确。本系统对检测信号先后经过中值滤波和可变参的低通滤波,同时设计了一种自适应基值策略以消除使用过程中温度变化产生的电容偏移[7,8]。通过该人屏互动方案在各种环境下的实际应用效果显示,此互动系统环境适应强,系统容错率高,感应定位准确而灵敏,互动体验效果良好,可应用于各种舞台互动表演、娱乐馆互动游戏、商业或展会互动展示等场合。
1 系统总体设计
1.1 总体设计
LED显示屏互动系统总体设计如图1所示。其中,电容式接近感应传感器、微处理器和数据传输控制器接收卡集成组装在LED显示屏箱体内。
图1 互动系统总体设计
电容式接近感应传感器按4×4排列分布式内嵌于LED显示屏箱体表层下面板电路中,通过引脚连接显示屏表层面罩下的感应线圈,在显示屏表层区域形成一个感应电场来检测物体的接近,检测单元布局结构如图2所示。
图2 接近检测单元结构
1.2 接近检测模块
系统所用接近传感器为赛普拉斯系列电容式接近感应传感器CY8CMBR3102,该传感器感应检测引脚与外部感应线圈相连,线圈受电压源激发会在周围产生感应电场,当有物体进入电场区域会使传感器电容发生改变[9,10]。传感器内部有一个14 Bit分辨率的转换器,转换器自动将检测到的电容按比例转换为一个原始计数信号值。传感器检测原理如图3所示。
图3 电容式接近传感器检测原理
系统对于检测到的电容感兴趣的是其变化值,给传感器设定一个阈值,若计数信号值变化量超过阈值则说明有外部物体接近传感器线圈,判定传感器处于感应状态ON;反之,则说明传感器处于闲置状态OFF。外部微处理器对原始计数信号值的连续采样就可得到传感器感应状态的实时变化信息。
1.3 互动功能模块
系统互动功能实现流程图如图4所示。
图4 系统互动功能实现流程
互动显示屏微处理器扫描屏面所有接近传感器获取其感应状态信息,同时将各传感器感应状态和其在显示屏上位置信息组装成一个数据帧并上传至计算机,计算机中上位机操作软件解析数据帧得到互动显示屏上传感器触发区域的位置信息。上位机操作软件将选择的Flash动画播放控件缩放并叠加到映射区域中,并根据解析的传感器触发区域位置信息在映射区域对应位置触发点击事件,引起Flash动画的点击响应,画面同步传输至LED显示屏端看起来就是物体靠近的区域产生实时互动效果。其中上位机软件通过VB.Net程序编辑设计,有良好的界面编辑环境为LED显示屏的各项功能添加操作控件,与数据传输控制器配合向LED显示屏中微处理器发送控制指令或接收数据以实现对LED显示屏的远程操作。
1.4 数据处理模块
系统数据处理模块主要负责处理接近传感器采集的信号和根据上位机下发指令对显示屏执行相应互动功能操作。接近传感器采集的信号往往存在各种不同的噪声干扰,主要包括有由开关电源产生的噪声毛刺,以及传感器电路中一些有源器件产生的1/f噪声[11,12](闪烁噪声),一般频率在20~25 Hz左右。此外,系统使用环境也会对传感器采集带来影响。在互动系统控制软件中提出一种自适应基值综合滤波算法对传感器原始数据进行综合滤波处理,并优化传感器获得感应触发的方式,以减少传感器检测误差,增加感应触发准确性与均衡性。
自适应基值综合滤波算法执行步骤如下:1)对接近传感器检测的原始数据先后经过中值滤波和低通滤波[13,14]以消除干扰噪声,对经过中值滤波后的信号需要采样测量噪声最大振荡幅度,确定低通滤波器滤波系数以优化滤波效果。2)将经过滤波处理后的信号在接近传感器闲置OFF状态下取100个采样周期内的平均计数值,作为该传感器的计数信号基值basecount;随后计算滤波信号与信号基值之差作为信号的差分计数,根据信号差分计数值fd(i)与接近感应阈值Threshold对比,判断传感器接近感应触发状态。3)系统启动之初会检测并设置LED显示屏箱体内温度为参考温度,之后每过一定时间重新检测箱体内当前温度并计算与参考温度之差,根据温度差决策是否重新检测设置传感器计数信号基值以消除环境温度给接近传感器检测带来的偏差。4)针对接近传感器在持续感应情况下的触发状态,根据不同使用需求执行相应的判断策略。
1.4.1 信号综合滤波处理
微处理器每隔20 ms对接近传感器中检测电容转换而来的原始信号进行采样,采样信号首先进行中值滤波以消除信号中的噪声毛刺。采样数据中取包括当前数据的前N个连续采样值xi,xi-1,…,xi-N+1存入缓存区,对这N个数据按从小到大排序得到新序列si,si-1,…,si-N+1,取其中间值作为本次采样数据的有效值y(i),即
{si,si-1,…,si-N+1}=sort{xi,xi-1,…,xi-N+1}
(1)
y(i)=median{si,si-1,…,si-N+1}
(2)
要获得下一个采样有效值y(i+1)只需在缓存区中移除第一个采样值xi-N+1,添加新的采样值xi+1,再次对这N个采样值中值滤波即可。通常情况下接近传感器对持续时间超过5个采样周期的变化信号视为正常触发而非扰动引起的可识别信号,因此式(1)、式(2)中N取值为9。
经中值滤波后采样信号包含依然包含闪烁噪声,需要通过一阶低通滤波器予以滤除。一阶低通滤波器的公式为
f(i)=ay(i)+(1-a)f(i-1)
(3)
式中 a为滤波系数,a一般为远小于1的参数,y(i)为当前中值滤波后的采样信号值,f(i)为y(i)通过低通滤波器的输出值,相应的f(i-1)为前一次低通滤波器的输出结果。若直接使用此低通滤波器消除信号噪声,传感器对有用信号变化的滤波结果将无法及时跟进。固定的滤波系数对不同强度噪音滤波无法都达到理想输出效果。本文提出一种可变系数的低通滤波器以优化滤波效果,在式(3)的基础上由采样信号计数值的变化确定滤波系数a的值
(4)
式中 K为采样信号噪声衰减因子,可在低通滤波器初始采样的100个采样周期内计算采样计数信号的最大振荡幅度r,根据r值(即最大噪声幅度)大小确定K的值。衰减因子取值如表1所示。
表1 衰减因子K值表
结合式(3)、式(4),若连续两个信号之间变化不超过K个计数值,则代表是噪声引起的信号值振荡,f(i)的值主要取决于上次通过低通滤波器的输出值f(i-1),可保证滤波输出结果能趋于平稳;反之,则说明信号变化是由外部感应引起,需要滤波结果f(i)能及时跟进当前采样信号值y(i)变动,保证感应检测的灵敏性。
系统感兴趣的触摸感应信号频率往往不大于1 Hz,而要滤除的闪烁噪声在20~25 Hz;根据一阶低通滤波器的截止频率计算公式fL=a/2πt,其中t为信号采样周期。将表1中K值代入式(4)可换算得到a,进行稳定滤波时滤波器截止频率在0.12~0.5 Hz之间,进行触摸感应信号检测时滤波器截止频率在7.5~7.8 Hz之间,既可以滤除闪烁噪声,又可以基本还原触摸信号。
1.4.2 基于自适应基值的感应状态重判断
在传感器运行初始阶段,对其经过综合滤波后的采样信号,取100个采样周期内的平均计数值作为传感器的计数信号基值basecount,basecount基本可以代表传感器在未触发状态的计数信号值。取采样信号计数值与计数信号基值之差fd(i)作为传感器信号变化量,信号差分计数fd(i)若大于传感器感应阈值Threshold,则传感器处于触发状态,感应状态为ON;否则传感器处于非触发状态,感应状态为OFF。感应阈值Threshold代表接近传感器接近检测模块感兴趣的计数信号变化量,取值可在实际应用中做适当调整。传感器感应状态重判断过程如下
fd(i)=f(i)-basecount
(5)
传感器开始运行时确定了计数信号基值basecount,使用过程中若周边环境温度发送变化会导致传感器采样信号输出值f(i)产生偏差Δf,这需要对传感器计数信号基值进行自适应调整以消除环境温度变化影响,确保信号差分计数fd(i)维持相对不变。经实践检验,箱体环境温度每变化6 ℃,接近传感器采样信号输出值会有较大偏差,因此若检测的温度值与参考温度之差超过6 ℃,则微处理器进入中断设置当前温度下传感器的计数信号基值和参考温度。
1.4.3 感应状态执行策略
根据式(5),物体靠近接近传感器一定距离其采样信号差分计数值将大于感应阈值Threshold,使得传感器感应状态为ON,微处理器判断此接近传感器处于触发状态。根据互动显示屏的不同使用需求提出两种执行策略:1)传感器感应状态与触发状态一致,即感应为OFF时非触发,感应为ON时触发。2)传感器在感应状态为OFF时非触发,感应持续为ON时只触发一次。对于这种触发方式只需要在传感器感应状态进入ON时引起一次触发,其后停止触发,直到下一次传感器感应状态由OFF转到ON。
2 实验与结果分析
2.1 综合滤波实验
测量微处理器在20 s时间内对接近传感器采样的数据如图5(a),由图可以看出原始信号包含很多噪声;根据1.4节所述,对原始信号经过中值滤波得到图5(b),原始信号中毛刺噪声明显减少;同时对经过中值滤波的信号在初始100个采样周期内计算信号最大振荡幅度,可得到振荡幅度r=28,由此确定信号噪声因子K=32;中值滤波后信号经过低通滤波得到波形如图5(c)所示,信号噪声变化已基本趋于平稳;经综合滤波后的信号,取100个采样周期内的信号平均值作为传感器计数信号基值basecount。
图5(c)经滤波后的输出信号中,传感器在13 s和17 s左右产生外部接触感应,计数信号值有较大跃升;取信号计数值与基值之差得到差分计数信号如图6(d),由于第一个外部感应产生的信号差分计数值大于感应阈值,因此传感器感应状态变为ON;而第二个外部感应产生的信号差分计数值小于感应阈值,故传感器依旧处于OFF状态。
图5 信号综合滤波过程
2.2 自适应基值调节实验
取10台LED显示屏箱体于温度调节室内,对每一台箱体首先加载无自适应基值调节方法的程序,同时将屏上接近传感器在室温(24 ℃)环境下初始化并确定基值;测量传感器在以下两种情况下处于不同使用环境中的差分计数信号值变化:一是不受外界感应的闲置状态;二是有外部感应的感应状态,为了保证感应状态下每次传感器电容变化相同,实验取同一物体自由放置显示屏箱体表面以覆盖感应线圈。作为对比实验,对实验箱体加载使用自适应基值调节方法的程序,按照先前方法测量显示屏上的接近传感器差分计数信号值变化。随机选取其中一台箱体上任意一个接近传感器测量对比实验数据,实验结果如表2所示。
实验中设置传感器感应阈值为128,表2中带“*”标记的数字表示传感器处于触发状态。由表2可知,无自适应基值的传感器基值固定,受温度变化影响其差分计数值会产生偏移。中使用自适应基值调节的传感器在不同温度下自动调整传感器基值,消除了温度变化引起的差分计数值偏移,保证即使在比较极端的环境下相同的外部触发引起的传感器电容变化基本一致。
表2 不同温度下自适应基值调节对比实验结果
随后对实验箱体上10×16=160个接近传感器都按如上方法做对比实验,其中,无自适应基值的传感器有66 %左右在低温环境下感应失效,有90 %在高温环境下存在误触发现象;而使用自适应基值的传感器100 %都能正常工作。实验结果证明:本文所提出的自适应基值调节方法能克服温度因素对接近感应传感器带来的影响,可以使系统环境适应性大大加强。
3 结 论
实验结果表明:算法减少了显示屏检测电路中产生的噪声因素对电容式接近感应传感器检测触摸过程带来的误差,使互动显示屏上各个检测区域对外部触发的灵敏性相对均衡;同时也消除了温度变化对系统检测带来的影响,从而大大加强了系统的环境适应性,提高了系统的容错率。