关于电阻触摸屏多点触控的算法
扫描二维码
随时随地手机看文章
目前市面上出现较多的方式是多点触控手势识别。手指同时触摸屏幕多点时,能够识别每个手指移动的方向,能够进行旋转、缩放、平移等操作,但还不能够判断出每个手指的具体位置。但两点触摸甚至多点触摸时,X、Y 轴上会产生多个最大值,此时系统无法判断触摸点的准确位置。通常把并不是真正触摸的点叫做“鬼点”。
多点触控位置识别才是真正意义上的多点触控技术,可以识别到触摸点的具体位置,没有“鬼点”的现象。这种触控技术基于互电容检测方式,通过行列交叉处耦合电容Cm 的变化判断触摸点。手指触摸时行列之间的互电容减小,可以判断触摸点存在,并且准确判断每一个触摸点位置。
实现两点触摸,每个工作单元必须彼此独立,并且触摸点只能在同一个工作单元中。图1 给出了电阻式触摸屏实现多点触摸的方法:在X1 电极上加上电压,由Y1,Y2,Y3 电极读取A、B、C 触摸单元所检测到的X 坐标;在以后的各个始终周期依次读取X2,X3 的坐标。获得所有触摸单元的X 坐标后,再依次给Y 电极加上电压,以获得各个触摸单元的Y 坐标,从而实现两点触摸。
当触摸屏表面有触摸点时,上层的ITO 导电层向下凹陷,发生形变,并接触到下层的ITO,接触点的两层ITO 导电层之间存在一个电阻,当触摸的压力越大时,之间的电阻阻值就越小。通过计算相应阻值,可以得到触摸位置,但是想要正确识别出两点触摸的位置,就必须先剔除非触摸点。所谓非触摸点,就是指没有意愿的接触点。这些触摸点是随机的,而且是非有效触摸。比如,触摸力度较轻时,触摸屏ITO 导电层的电阻处在接通与未接通的临界点,类似这样的触摸点就是非触摸点。这在没有意志支配的情况下产生的接触点,对整个检测没有意义的,所以必须将它们剔除。
考虑到非触摸点的随机性,两次测量的方法可将其剔除。若第一次测量的结果是有效值,但第二次测量的结果超出了整个触摸屏的阻值所规定的范围,是一个很大的值,则视其为无效值,该点即为非接触点,必将其剔除。反之,如果第二次测量的结果在整个触摸屏的阻值所规定的范围内,则视其为有效值,是有效的触摸点。
触摸屏幕的压力大小不同,ITO 导电层的电阻值也不同,也就是说轻触或重触触摸屏,产生的电阻是不同的。控制芯片可以测试出接触电阻的阻值大小,但是没法分辨出是轻触,还是重触,这只会影响判断触摸点的准确性,从而会影响整个触摸屏的可靠性。下图是图2是轻触的示意图。
在现阶段的方案中, 接触电阻和压力成为影响触点坐标准确性的重要因素。如果接触电阻不大于方阻,不会影响坐标显示的准确性;如果大于方阻,就会出现跳跃点。比如,轻触触摸屏上的某一点,会造成电路接通不完全,对整个电路来说,它表现为测量电阻大,测得的值比实际值要大,那么它的坐标将会向后跳跃。与其相反的,如果是用力的重触触摸屏上的某一点时,坐标会前移。由此可见轻触或重触对接触电阻的测量值影响很大,接触电阻和压力成反比。
查阅过一些四线电阻式触摸屏的技术手册后发现:他们通常使用接触电阻小于2kΩ 这个测试条件,来测试最小压力这个参数。在正常力度的压力下, 一般接触电阻为2kΩ;如果压力更小, 接触电阻则会大于2kΩ。由此可见,实际测量结果与所施加的压力存在动态变化,如果加在同一点上的力量是变化的,那么测量出的坐标点就是不确定的,所以这种测量方法仍然必须改进。
在此,分解一次完整的触摸过程:(1) 手指接触到触摸屏表面,(2)手指对触摸屏逐步增加压力,(3) 压力保持,(4) 抬起手指,(5) 手指的压力逐步减小,(6) 手指离开触摸屏,整个触摸过程完成。分解过程之后可以发现,在这个过程中,手指对屏幕的压力并不是一个恒定不变的量。所以,细分整个过程,把不同时期得到的压力和接触电阻全部采样,然后求取平均值,那么这个值将更加接近实际数据,这就是用求平均值的最根本原因。用求平均值的方法可以模拟整个触摸过程,从而排除掉前期接触、后期接触或者中间接触时压力不稳等情况。