打印
[其他ST产品]

ST加速计(LIS3DH)使用基础篇 三 --single click, double click

[复制链接]
1240|0
手机看帖
扫描二维码
随时随地手机跟帖
跳转到指定楼层
楼主
cr315|  楼主 | 2021-9-3 16:42 | 只看该作者 |只看大图 回帖奖励 |倒序浏览 |阅读模式
IS3DH芯片集成了单击和双击的功能,这给很多应用提供了便利,例如在穿戴设备上,不但减少了布置按键给小巧的结构设计带来的挑战,对于用户来说,这种更大自由度的操作方式更是一种愉悦的享受。下面具体介绍下这个功能吧。

要了解这两个功能的设置,需先了解下相关的寄存器:





这里有一个阈值设置的寄存器,和三个时间的窗口设置的寄存器(timelimit , time latency, time window). 后面在介绍single click 和double click 时会讲到他们分别的作用。

一  Single click

如下图,sensor通过检查加速度的变化是否有超出预先定义的阈值,然后在规定的时间内(time limit)又是否小于此阈值来判断一个single click 的动作,阈值和时间(time limit)就定义了加速的的变化波形。下图中,a 同时满足了阈值和时间限制的条件,是一次成功的动作的识别,然后产生了中断。b只满足了大于阈值的条件,但在规定时间限制内没有降到阈值下,所以不满足识别的条件。



二 Double click
如下图,double click实际上是两个singleclick的识别,但是同时还要满足另外两个时间窗口的要求(timelatency , time window).当第一click识**,在time latency 窗口内,sensor不会做任何识别,在time window 窗口内开始第二click的识别,判断此时的加速度值是否大于阈值,如果成功识别到第二次click,就会产生一个中断输出一个doubleclick 的事件。


实战技巧:

1)时间窗口的设置,寄存器每个最小的时间单位是LSB=1/ODR(output data rate) , 假设ODR是100 HZ,那最小的时间单位就是10ms,假设你要设的时间是t,那对应的寄存器就要设置为X=t/(1/100).

2)阈值的设定是与量程相关的,1LSB= FULL SCALE/128.

3)数据的采集,为了设置合理的时间窗口和阈值,要进行数据的收集,因为不同的应用,结构,材料可能不同,导致最终敲击的波形会有一些差异,建议收集数据时采用系统能支持的最大采样频率,这样采集的数据才能完整反映实际的波形。如下图是一个双击的波形图。可以看出波形比较尖锐,latency窗口比timelimit 窗口要明显的大。



4) 根据设计的要求合理评估识别率与误触发率,最终配置合理的参数。

使用特权

评论回复
发新帖 我要提问
您需要登录后才可以回帖 登录 | 注册

本版积分规则

1327

主题

3831

帖子

0

粉丝