西西弗斯比巨石还要坚硬 - 加缪
西西弗斯是希腊神话中的悲剧人物,因窥见宙斯秘密而被众神惩罚。他将永远重复推一块巨石上山,每当巨石接近山顶时,就会重新滚落山下,周而复始,永无终结。
日夜受罪,以至劫数,无时间绝,故称无间。
世人沉浸在幻象中,渴望意义与回报,认为善有善报、恶有恶报、苦难有偿、努力终有终点。
可是,如果宇宙有意义,为什么人间到处充斥着西西弗斯的故事,尤其在那个古老的农耕国家;如果宇宙没有意义,人为什么还要继续活下去?
而西西弗斯作为事件的主角,从不逃避荒诞的命运。既然失败是必然的,那么每一次的行动都不是为了成功,而是为了展示自己的存在,在抗争中展示自己的尊严。
现在,我站在这里,我知道你在摧毁我,但我不会停止,精神不死,你可以把我从物理上消除,却消弭不掉我的反抗之心(to KQi,last time)。
上一篇文章介绍了转子马达,链接如下:
而在马达领域,有一种被称为线性马达的马达类型。这种马达当前风头正劲、一时无两,其内部质量块周而复始的往返运动,与推着石头上山的西西弗斯极为相似。下面简要介绍下,希望可以帮到有需要的人。
背景
与转子马达(ERM)相比,线性马达(LRA)尺寸小、响应快(启动快、刹车快),而且有明显的方向性导向,能够实现细腻的震动效果,这使得它能够为用户提供更好的触觉体验。
线性马达,顾名思义,其实质就是质量块是做线型运动,目前来说分为两种:一种是Z轴的,质量块做垂直运动,看起来矮胖;一种是X轴的,质量块做左右横向运动,看起来高瘦。
X轴线性马达与Z轴线性马达相比,因为内部有两根弹簧线圈,可以实现更加丰富、细腻的振感。同时也因为其体积更大、更有力,也使得手机振感更为强烈。

内部结构
以Z轴线性马达为例,其内部主要包括振动系统、磁路系统以及支撑系统三大模块,每个模块又由若干组件构成。振动系统为马达振动力的产生提供硬件条件,磁路系统为系统提供磁场,支撑系统是马达的结构框架。

工作原理
其本质是由于内部两种类型磁铁的相互作用而运动,以Z轴线性马达举例说明震动原理如下。
首先,Z轴线性马达内部有个永磁体的。
除了这个永磁体,内部还有一种电磁铁:当给内部圆形线圈通以电流,则形成通电螺线圈,通电螺线圈周围存在磁场,磁场方向和大小可参考下图。

如果驱动电流方向改变,则线圈的磁场方向也会随之转变,即磁铁的极性受电流方向的控制。
通电线圈形成的电磁铁和永磁铁之间因同性相斥,异性相吸而产生作用力。
除了磁铁,马达内部还有弹簧和配重(配重包含永磁体),弹簧煽风点火,提供回复力。
通电后配重被磁力斥出或吸回,然后还要抵抗或者释放弹簧的能量,由此便形成循环往复的震动。
其实线性马达跟喇叭(扬声器)有一定的类似之处,只不过喇叭是线圈带动薄膜震动,磁铁是不动的;而线性马达是线圈不动,含有永磁体的质量块在运动。
Z轴马达可能不容易看出运动原理,而X轴马达则很容易看出质量块左右摇摆运动原理,示意图如下图。

驱动方案之H桥
前面说了,只要我们控制线圈的电流方向,激励线圈形成不同方向的磁场,就能控制马达运动。
而如何控制电流方向呢?答案是使用H桥,通过H桥不断切换马达两端的电压正负极性,如下图,以艾为AW8622为例,内部框图中的output stage就是用H桥做的。


上面的AW8622,使用模拟信号调制的PWM作为输入,再经过低通滤波转换为模拟信号,由此控制震感。
而现在多用IIC通信的方案,芯片的框图如下所示,主要由H桥及H桥驱动电路、BEMF检测电路、RAM等部分构成。
下图展示了H桥两个桥臂的波形,和马达两端的波形。

震感本质上是特定的电压波形,而RAM可以存储这些波形,就像收纳音乐的乐谱一样。当需要震动动时,芯片可以直接从内部RAM里调用乐谱,而不需要占用AP的宝贵资源,可谓既快速又高效。
驱动方案之升压驱动
除了H桥,有些芯片会集成升压驱动,以艾为AW8695FCR为例,内部集成了Boost升压模块,为什么要升压呢?

高压可以让质量块在更短的时间内达到更大的位移,就会在很短时间内达到比较大的震动,再在很短的时间内完成刹车。天下武功,唯快不破,反应到用户主观体验上,就是触感更为细腻强烈,印象深刻。

驱动方案之频率追踪技术
每个线性马达本质上都是一个“弹簧-质量块"系统,那么便不可避免的存在一个固有的谐振频率(F0)。在FO下,最小的力气(最小的电压),却能使马达的振动量达到最大,我们可以从扫频曲线上观测到这个现象,如下图所示。

但是马达的固有谐振频率会受到很多因素影响,比如:
- 即使是产线同一批次的马达,由于材料和工艺的微小差别,其谐振频率也可能不同。
- 手机使用过程中,马达内部的弹簧特性会因温度而改变,导致谐振频率发生漂移。
- 随着手机使用时间增长,马达的机械结构也会发生老化,影响其固有频率。
如果马达固有频率F0业已改变了,却还是用原先的频率去驱动,那么就会出现振感变弱,响应变肉,功耗增加等力不从心、事倍功半的问题。
为了解决这个问题,业界在驱动芯片中集成了Fo检测和动态追踪F0功能。其原理是利用H桥断开的间隙,检测马达的BEMF(反电动势)信号的幅值和频率。
如下图(素材来自艾为官网),BEMF是马达内部质量块受迫振动停止后,自由振荡而产生的电压信号。受迫振动主要是让马达的充分的起振,起振后就会把驱动信号撤掉,那么马达里面的质量块就会像秋千一样自由震荡。又因为马达内部有线圈,便会产生反向电动势。此时芯片自动检测反向电动势,计算它的过零点,基于过零点对应的周期就可以计算出频率了,该频率就是真正的F0。

检测到真正的F0后,马达驱动芯片就会重新调整驱动频率,这个过程会快速循环,完成追踪。
那么何时进行马达F0检测呢?大致为:
- 每台手机在产线出场时的质检的时候。
- 手机每次开机的时候,安卓系统开机都会伴随一个震动,利用下该震动把F0记下来,完成跟踪。
F0检测的方案很多,上面只是介绍了一种较为简单、通用的方案。其实我们也可以通过信号的相位感知马达的F0,因为马达工作在谐振频率时,其振动位移与驱动电流之间的相位差将是90度。