主动笔的背包模式

前言:
  主动笔是一种低功耗消费电子,起对功耗的要求可谓严苛,应尽可能考虑节省功耗的方法,达到更长时间待机的目的。

1 逻辑策略

  主动笔目前为了达到人在使用时工作,人不使用时进入低功耗模式,目前主流的做法是采用加速度计来检测加速度,当出现加速度大于某个阈值时认为人在使用主动笔此时唤醒主动笔开始工作,当加速度持续低于某个阈值并且持续一段时间则认为不使用主动笔,此时主动笔进入低功耗模式。这种通过检测减速度是否大于某个阈值的方法来判断是否人在使用主动笔的方式,准确率很低,实际要判断人的意图仅靠加速度是很难的。引起加速度变化的不一定是人,即便是人也不一定此时运动是为了用笔书写。也即有加速度不等于人使用笔书写。加速度小于阈值也不能得出人没有使用笔书写的结论,因为加速度小不等于速度小,可能较为匀速书写或者画单向圆,如果加速度取的太小又会引起笔过于容易被唤醒,不利于降低功耗。也即没有加速度不等于处于非书写状态。
  设想这样一个场景,当笔装在背包内行走时,行走的“外界”抖动将持续传达给笔,导致笔一直处于唤醒状态持续消耗功耗。一些笔设计了开关机功能,使用时需要人为按键开机,使用后按键关机,但这将降低使用体验,因为我们习惯使用的笔都是拿起即用的。本篇文章将设计一种能更准确识别人的意图,在背包内应该保持低功耗的模式,称其为背包模式。
  显然,只用加速度判断人的使用意图条件是不够的,我们引入更多的主动笔条件。主动笔可检测笔尖压力,新一代的主动笔可接收屏信号。这些条件单独判断也是很不准确的,将其组合判断。
  简化逻辑:直接判断人的意图显然是做不到的,可以将条件通过具体使用场景间接转化。(注意:以下“人使用主动笔”指的是人具有真实的书写或使用光标功能的意图,除此之外都视为不使用主动笔,比如只是将主动笔拿在手上观赏视为不使用主动笔。)
  作出假设:

  1. 当人使用主动笔书写时,存在电子屏并能检测到屏信号;
  2. 当人使用主动笔书写时,在一段时间内会检测到笔尖压力;
  3. 当人使用主动笔书写时,在一段时间内会检测到加速度大于阈值;
  4. 当人不使用主动笔时,在一段时间内持续检测不到屏;
  5. 当人不使用主动笔时,在一段时间内持续检测不到笔尖压力;
  6. 当人不使用主动笔时,在一段时间内持续检测不到加速度大于阈值。

  有了假设,将假设带入实际场景分析。

  场景分析:

  1. 使用主动笔写字时
    场景特点:有笔尖压力、有屏信号、有加速度变化。
    符合假设1、2、3

  2. 使用主动笔但笔悬于屏上停滞思考问题时
    场景特点:无笔尖压力、有屏信号、无加速度变化。
    符合假设1

  3. 使用主动笔但笔暂时离开屏范围时
    场景特点:无笔尖压力、无屏信号、可能有加速度变化。
    符合假设 无

  4. 不使用主动笔静置于桌面时
    场景特点:无笔尖压力、无屏信号、无加速度。
    符合假设4、5、6

  5. 不使用主动笔静置于笔筒内时
    场景特点:可能有笔尖压力、无屏信号、无加速度。
    符合假设4、6

  6. 不使用主动笔放于背包内行走时
    场景特点:可能有笔尖压力、无屏信号(背包内屏一般关机或息屏)、有加速度。
    符合假设4

  7. 不使用主动笔静置于工作状态的屏上时
    场景特点:无笔尖压力、有屏信号、无加速度。
    符合假设5、6

  可以分析出当持续一段时间检测不到屏信号作为非使用状态的条件较为可靠。当检测到屏信号时认为处于书写状态较为可靠,显然屏信号是比加速度更可靠的条件。但还未结束,涉及到检测屏信号,就有“何时检测”的问题,一直检测将导致功耗过大,实际中笔存在关闭接收的低功耗模式。可以将笔尖压力和加速度作为触发检测屏信号的条件。对于使用意图的判断条件设计需要优先保证识别出“使用主动笔”的场景,“不使用主动笔”的场景可以次之考虑,因为要在功能正常的前提下尽可能节省功耗。于是设计出以下背包模式规则。

  背包模式规则:

  1. 当检测到屏信号时认为“使用主动笔”;(保证场景1、2识别准确)
  2. 当检测不到屏信号并且持续一段时间无加速度和压力变化时认为“不使用主动笔”;(识别场景4,防止场景3误判为“不使用主动笔”)
  3. 当前处于“使用主动笔”状态时,若有加速度或压力变化,即使检测不到屏也继续保持“使用主动笔”状态;(防止场景3误判为“不使用主动笔”)
  4. 当前处于“不使用主动笔”状态时,若有加速度或压力变化,当变化时触发一次唤醒并短暂打开接收,若接收到屏信号则认为“使用主动笔”,若未检测到屏信号则关闭接收继续保持“不使用主动笔”状态,并在接下来一小段时间内保持不被唤醒状态,防止频繁的干扰抖动。(识别场景6)
  5. 当持续一段时间检测不到屏信号和加速度变化时,若笔尖有压力但保持稳定,认为“不使用主动笔”。(识别场景5)
  6. 当检测到屏信号但检测不到笔尖压力和加速度变化时,若持续较长时间则认为不使用主动笔。(识别场景7)