触摸按键检测方法技术

技术编号:23398565 阅读:23 留言:0更新日期:2020-02-22 11:03
本发明专利技术提供一种触摸按键检测方法,包括以下步骤:进行初始化:包括设置按键灵敏度;设定基线值的初始值;根据灵敏度设置触摸阈值、噪声阈值,灵敏度越高,触摸阈值和噪声阈值越高,应满足触摸阈值>噪声阈值;初始化结束后,读取传感器采集到的电容值;判断采集到的电容值是否超过基线值+触摸阈值,若否则进入下一步,若是则判定为触摸;判断电容值是否超过基线值+噪声阈值,若是则返回进行下一次检测,若否进入下一步;判断电容值是否低于基线值‑1/4噪声阈值,若是则返回进行下一次检测,若否则进入下一步;根据水桶算法更新基线值;本发明专利技术实现动态阈值判别方式的触摸按键检测功能。

Touch key detection method

【技术实现步骤摘要】
触摸按键检测方法
本专利技术涉及触摸开关
,尤其是一种触摸按键检测方法。
技术介绍
随着物联网技术的不断发展,传统电子设备越来越重视人机交互方式的革新,老式的机械开关逐渐被触摸式开关所替代,智能门锁、智能灯具等物联网设备已经将触摸按键作为主要的交互方式。触摸按键根据物理学原理可分为电容式、电阻式、红外线感应式、声波式等等。其中电容式触摸按键应用范围广,由于其没有任何机械部件,不会产生磨损,因此寿命长,维护成本低。电容式触摸按键基本结构包含主控芯片、PCB(印制电路板)按键及外壳覆盖材料如玻璃、亚克力板等。出于成本考虑,通常在物联网设备中尚未采用较先进的贴合工艺,而是普遍采用胶水粘合方式将PCB按键与外壳覆盖材料相连接,因此按键在使用时间过长、遭受物理碰撞、进水等情况后容易出现按键与覆盖材料接触不良的情况,这会导致触摸按键失灵,影响设备正常功能。电容式触摸按键发生接触不良,表现为按键电容值突然下降又恢复正常,这是由于覆盖材料本身具有一定的电容值,当其与PCB按键脱离时检测到电容下降,当其恢复后检测到电容上升,为避免出现接触不良而导致按键失效,需要一种触摸按键检测方法以适应该种噪声环境。目前电容式按键检测可分为静态阈值判别方式和动态阈值判别方式。静态阈值判别方式即确定一个固定阈值,当传感器检测到电容高于该阈值后即认为触摸生效,这种判别方式简单,同时接触不良不会产生干扰,因为接触不良产生的是电容先下降,再上升,不会超过固定阈值,但静态阈值判别方式忽略了环境变化对电容的影响,例如温度、湿度等,当温湿度变化的情况下会出现不识别或误识别的现象。动态阈值判别方式需要依照算法,根据传感器采集到的电容值得到基线值,基线值是动态变化的,在基线值基础上设定相对阈值,因此该相对阈值也是动态变化的,采用动态阈值判别方式可以使触摸按键有效适应缓慢的环境变化,如温度、湿度在不同地区、不同季节的变化,而不受影响。但接触不良对动态阈值判别会产生影响,导致按键失效。
技术实现思路
本专利技术的目的在于克服现有技术中存在的不足,提供一种触摸按键检测方法,针对触摸按键与覆盖材料接触不良的情况,实现动态阈值判别方式的触摸按键检测功能。本专利技术采用的技术方案是:一种触摸按键检测方法,包括以下步骤:步骤S10,进行初始化:包括设置按键灵敏度;设定基线值的初始值;根据灵敏度设置触摸阈值、噪声阈值,灵敏度越高,触摸阈值和噪声阈值越高,应满足触摸阈值>噪声阈值;步骤S20,初始化结束后,读取传感器采集到的电容值;步骤S30,判断采集到的电容值是否超过基线值+触摸阈值,若否则进入步骤S40,若是则判定为触摸;步骤S40,判断电容值是否超过基线值+噪声阈值,若是则返回步骤S20进行下一次检测,若否进入步骤S50;步骤S50,判断电容值是否低于基线值-1/n噪声阈值,若是则返回步骤S20进行下一次检测,若否则进入步骤S60;步骤S60,根据水桶算法更新基线值;更新基线值后开启下一次检测。进一步地,步骤S10中,基线值的初始值设定方法如下:按键没有触摸时采集多次传感器采集到的电容值,取最后一次采集到的电容值作为基线值的初始值。进一步地,步骤S50中,N取3~4。进一步地,步骤S60中,水桶算法具体包括:当本次传感器检测到的电容值低于当前基线值,那么基线值变更为本次传感器检测到的电容值;当本次传感器检测到的电容值高于当前基线值,那么计数器加1;如果计数器达到相应阈值,那么基线值增加一个单位值。更进一步地,单位值是按键触摸时电容值的2‰~5‰。本专利技术的优点:本专利技术实现了当出现触摸按键电容突然下降,又恢复正常的情况下,触摸按键检测功能;解决了PCB按键与覆盖材料接触不良情况下的触摸按键动态阈值检测问题。附图说明图1为本专利技术的检测方法流程图。图2为本专利技术的初始化流程图。图3为本专利技术的触摸按键检测中各参数变化示意图。具体实施方式下面结合具体附图和实施例对本专利技术作进一步说明。本专利技术提出的一种触摸按键检测方法,包括:步骤S10,进行初始化:包括设置按键灵敏度;设定基线值的初始值;根据灵敏度设置触摸阈值、噪声阈值,灵敏度越高,触摸阈值和噪声阈值越高,应满足触摸阈值>噪声阈值;本步骤包括三个子步骤,如图2所示,第一个子步骤是设置按键灵敏度;灵敏度设置为1~20中的一个整数,灵敏度反映了采用不同覆盖材料覆盖PCB按键情况下手指触摸后的电容变化,越厚的覆盖材料需要设置越低的灵敏度,同时灵敏度设置还和覆盖材料本身介电常数有关,例如玻璃的介电常数高于亚克力板的介电常数,因此选用玻璃材料作为覆盖材料,需要设置更高的灵敏度;第二个子步骤是设定基线值的初始值,基线值的初始值设定方法如下:按键没有触摸时采集一定次数传感器采集到的电容值,取最后一次采集到的电容值作为基线值的初始值,目的是为了避免传感器刚刚工作采集到的数据异常,导致触摸按键检测失效;第三个子步骤是根据灵敏度设置触摸阈值、噪声阈值,灵敏度越高,触摸阈值和噪声阈值越高,应满足触摸阈值>噪声阈值;步骤S20,初始化结束后,读取传感器采集到的电容值;通常通过传感器采集电容值;步骤S30,判断采集到的电容值是否超过基线值+触摸阈值,若否则进入步骤S40,若是则判定为触摸;如果有手指触摸了按键,那么电容值增加,此时检测到的电容值会超过基线值+触摸阈值,即判定为触摸,如果没有手指触摸按键,那么电容值不会增加,此时检测到的电容值不会超过基线值+触摸阈值,进入下一步S40;步骤S40,判断电容值是否超过基线值+噪声阈值,若是则返回步骤S20进行下一次检测,若否进入步骤S50;当外界环境存在干扰时,例如电磁干扰、电压波动、快速温湿度变化时,会导致触摸按键传感器检测到的电容波动,这种波动如果超过了噪声阈值范围,即传感器检测到的电容值超过了基线值+噪声阈值,可以认为数据异常,忽略本次数据,开启下一次检测;否则,进入下一步S50;步骤S50,判断电容值是否低于基线值-1/n噪声阈值,若是则返回步骤S20进行下一次检测,若否则进入步骤S60;N通常取3~4,本例中取4;如果存在PCB按键与覆盖材料接触不良的情况,那么电容会突然下降,再恢复正常,因此当传感器检测到的电容值低于基线值-1/4噪声阈值,可以认为发生了接触不良的情况,忽略本次数据,开启下一次检测。否则,进入下一步S60;步骤S60,根据水桶算法更新基线值;更新基线值后开启下一次检测;水桶算法是指:当本次传感器检测到的电容值低于当前基线值,那么基线值变更为本次传感器检测到的电容值;当本次传感器检测到的电容值高于当前基线值,那么计数器加1;如果计数器达到相应阈值,那么基线值增加一个单位值;一个单位值可以是按键触摸时电容值的2‰~5‰;图3中,a线代表基线值+触摸阈值,b线代表基线值+噪声阈值,c线代表传感器实时本文档来自技高网
...

【技术保护点】
1.一种触摸按键检测方法,其特征在于,包括以下步骤:/n步骤S10,进行初始化:包括设置按键灵敏度;设定基线值的初始值;根据灵敏度设置触摸阈值、噪声阈值,灵敏度越高,触摸阈值和噪声阈值越高,应满足触摸阈值>噪声阈值;/n步骤S20,初始化结束后,读取传感器采集到的电容值;/n步骤S30,判断采集到的电容值是否超过基线值+触摸阈值,若否则进入步骤S40,若是则判定为触摸;/n步骤S40,判断电容值是否超过基线值+噪声阈值,若是则返回步骤S20进行下一次检测,若否进入步骤S50;/n步骤S50,判断电容值是否低于基线值-1/n噪声阈值,若是则返回步骤S20进行下一次检测,若否则进入步骤S60;/n步骤S60,根据水桶算法更新基线值;更新基线值后开启下一次检测。/n

【技术特征摘要】
1.一种触摸按键检测方法,其特征在于,包括以下步骤:
步骤S10,进行初始化:包括设置按键灵敏度;设定基线值的初始值;根据灵敏度设置触摸阈值、噪声阈值,灵敏度越高,触摸阈值和噪声阈值越高,应满足触摸阈值>噪声阈值;
步骤S20,初始化结束后,读取传感器采集到的电容值;
步骤S30,判断采集到的电容值是否超过基线值+触摸阈值,若否则进入步骤S40,若是则判定为触摸;
步骤S40,判断电容值是否超过基线值+噪声阈值,若是则返回步骤S20进行下一次检测,若否进入步骤S50;
步骤S50,判断电容值是否低于基线值-1/n噪声阈值,若是则返回步骤S20进行下一次检测,若否则进入步骤S60;
步骤S60,根据水桶算法更新基线值;更新基线值后开启下一次检测。


2.如...

【专利技术属性】
技术研发人员:刘业凡徐琴黄以亮钱斌陈长华
申请(专利权)人:中电海康无锡科技有限公司
类型:发明
国别省市:江苏;32

网友询问留言 已有0条评论
  • 还没有人留言评论。发表了对其他浏览者有用的留言会获得科技券。

1