基于Android系统的五维手写信息采集设备的设计*

2016-04-22 07:13罗健飞吴仲城
传感技术学报 2016年2期

颜 瑞,李 芳,何 梦,罗健飞,吴仲城

(中国科学院强磁场科学中心,合肥230031)



基于Android系统的五维手写信息采集设备的设计*

颜瑞,李芳,何梦,罗健飞*,吴仲城

(中国科学院强磁场科学中心,合肥230031)

摘要:针对当前各类触摸屏不支持获取手写过程中所施加的三维力的问题,设计了一种五维手写信息采集设备。通过将多维力传感器集成于触摸屏下方,实现了手写过程中三维力和二维位置的准确获取,同时在设备搭载的Android系统中添加了自定义的系统服务模块,使设备从系统级别实现对五维手写信息获取的支持。对于设备在移动环境下使用所产生的干扰问题,它使用加速度传感器结合自适应滤波器技术进行抑制。结果表明该方案可行,设备具有一定的抗干扰能力,且可实现无触控笔操作,方便用户使用。

关键词:手写信息;自适应滤波器;多维力传感器;Android;加速度传感器

手写交互是一种常见的人机交互方式,在用户通过触摸屏与计算机交互的过程中,将产生二维的触摸位置信息(x,y)和三维的力信息(fx,fy,fz),准确地获取这些信息,对于实现生动且高效的人机交互技术,支持书法模拟[1]、数字纸张[2]和数字手写签名认证[3]等基于手写信息的研究与应用具有重要意义。本文将触摸位置信息和力信息定义为五维手写信息(x,y,fx,fy,fz)。

计算机设备为实现五维手写信息获取,必须同时满足软件支持和硬件支持的条件。硬件支持方面,目前许多计算机设备通过电容式触摸屏来获取触摸位置信息,但对于触摸过程所产生的力信息,电容式触摸屏只能根据触摸位置电容值的变化大小给出一个粗略的估计。Wacom的电磁式手写板通过特制的电磁压感笔来采集力信息,但它目前只支持获取轴向力,文献[4]设计了一款能获取多维手写力信息的压感笔,但用户需要使用压感笔来对设备进行操作,使用起来并不便利。Apple新推出的Apple Watch中使用的Force Touch技术通过显示屏周围的电极感知压力,无需使用压感笔便可获取压力信息,增加了使用的便利性,但其所感知的压力也只是一维的压力。在软件支持方面,目前各类操作系统都只实现了对一维力的支持,多维力信息的采集和处理需要通过二次开发进行支持。

本文采取将多维力传感器集成于触摸屏下方的方式来感知触控交互过程中力的大小。与采用压感笔获取力的方案相比,本文通过将多维力传感器与触摸屏的坐标系固联在一起,可在不进行坐标旋转变换的情况下测量力在三轴的分量,同时对书写笔无特殊要求,便于用户使用,为避免在移动情况下使用设备时,重力加速度和运动加速度对测量结果带来影响,本文还提出了基于加速度传感器和自适应滤波器技术相结合的抑制方法,以增强设备抗干扰能力。

1 五维手写信息采集原理

1.1三维力采集原理

触摸屏模组的受力运动示意图如图1所示。图中F为手写操作产生的力,N为三维力传感器对触摸屏模组的支持力,mg为触摸屏模组所受的重力,a为触摸屏模组质心处加速度。

图1 触摸屏模组的受力运动示意图

由于触摸屏模组受力时形状和体积的变化很小,可视为刚体进行处理,它的运动可分解为质心O的平动和其绕质心O的转动,平动方程如式(1)所示[5],将力传感器的输出用N′表示,则可以得到式(2),式(2)中的a-g可由加速度传感器测得,令其为a′可得到式(3)。

由式(3)可知,当在平稳环境下测量三维力时,式(3)中的加速度值为常量,将多维力传感器的输出值进行去零点处理即可得到待测三维力。但如果要在非平稳环境中准确地测量力,则还需要知道加速度的值,理想情况下,得到加速度值后,可通过该式计算得到待测力。

1.2二维位置信息采集原理

位置信息可以用触摸屏来采集,当前主流触摸屏有电阻式、电容式和电磁式。由于电阻式触摸屏不够灵敏,用户体验不佳,电磁式触摸屏需要使用电磁笔才能操作,且易受电磁干扰,本设备选用电容屏采集二维位置信息,其基本原理为通过检测触摸操作所引起的电容值变化来确定触摸位置[6]。

2 硬件设计

设备硬件部分基于嵌入式开发板进行设计,主要包括核心板、裁剪后的开发板、触摸屏模组、三维力传感器模块和三轴线性加速度传感器模块等,设备硬件框图如图2所示。

图2 设备硬件框图

2.1核心板与开发板

本设备使用的核心板提供了Android运行所需的硬件支持,包括ARM体系结构的处理器S5PV210,Flash,RAM。开发板包含丰富的接口和资源,需要根据具体需要进行裁剪。在本设计中主要保留电源接口、USB接口、SD卡插槽和SIM卡插槽等。

2.2触摸屏模组

本设备的使用场景定位于手写签名身份识别与认证、数字纸张等基于手写信息的研究与应用,对手写信息的准确获取要求触摸屏有100 Hz~200 Hz的采样频率[7]。由于开发板自带的触摸屏采样频率较低,本设计使用了另一款触摸屏模组FN070MV01,其触控IC使用SSD2533,经测验表明,在单指模式下其采样频率可达到142 Hz,满足设备应用要求。

2.3三维力传感器

三维力传感器用来获取五维手写信息中的三维力信息(fx,fy,fz),设计中使用的传感器为本实验室自主研发的系列电阻应变式多维力传感器[8],力传感器通过弹性体上的应变片电桥感知作用于其上的力信息,实现对三维力的测量。

2.4三轴线性加速度传感器

加速度的检测可以使用MEMS加速度传感器来实现[9],开发板自带了一片飞思卡尔的MEMS三轴线性加速度传感器MMA7660,但该传感器只有6位分辨率并不能满足本设计的要求,故在本设计中使用另一款具有14位分辨率的三轴线性加速度传感器MMA8451,本设计中利用该传感器对测量结果进行抗干扰处理。

3 软件设计

软件设计的主要任务是使Android系统实现对五维手写信息获取的支持,主要包括Linux驱动修改与移植、Android系统服务模块开发和Android应用开发等。整个设备的软件结构框图如图3所示。

图3 软件结构框图

3.1Linux内核驱动程序设计与移植

本设计选用的操作系统为Android 4.0.3,其内核为Linux 3.0.8,设计中需要移植和修改的驱动程序主要是与五手写信息获取实现有关的力传感器驱动、加速度传感器驱动和触摸屏驱动。

本设计对标准驱动进行了修改,加速度传感器驱动除了按正常流程向Android上报事件外,还注册一个字符设备,HAL层通过读写该设备节点与加速度传感器通信。触摸屏驱动也进行类似的修改。

3.2Android系统服务模块开发

目前Android系统并不支持多维力传感器,通过在系统中自定义一个系统服务模块可以解决该问题,该方法添加的代码是一个独立的模块,对操作系统源码修改少,便于代码的升级与维护。参照Android系统服务的标准结构[10],添加的模块包括HAL层、JNI层和应用程序框架层。

模块中的HAL层利用读取到的触摸位置(x,y)、力(fx′,fy′,fz′)和加速度(ax,ay,az)计算五维手写信息(x,y,fx,fy,fz),它在逻辑上实现了一个支持五维手写信息采集的传感器。

模块中的JNI层使用C++实现,其主要功能是实现上层Java代码与下层C代码的交互。

应用程序框架层为应用程序提供API,该层实现多App对传感器数据的共享。原理如图4所示,其中Service运行在系统服务进程中,Manager运行在各应用程序的进程当中,二者通过AIDL进行进程间通信。应用程序通过Manager实例向Service申请使用传感器,Service收到申请后给其返回一个ID号,并创建一个与该ID号关联的缓存队列,Man⁃ager的读数据线程利用该ID访问Service中对应的缓存,得到数据后通知应用程序注册的事件监听器,由此实现多App共享数据。

图4 多App共享传感器数据原理框图

4 抗干扰优化设计

本设备所受到的干扰包括动态干扰和静态干扰。动态干扰表现为较低频的运动干扰和较高频的振动干扰,静态干扰表现为零点漂移。本设备会同时检测这两类干扰,当任何一类干扰超过阈值即进行抗干扰处理。

4.1抗运动干扰设计

运动干扰产生的原因是设备低频晃动引起其加速度状态的变化。由1.1节的式(3)可知,三维坐标系下力与加速度之间有式(4)所示关系,理想情况下,基于式(4)可直接计算得到力的测量结果。但由于力传感器和加速度传感器的动态响应特性不同,该方法对运动干扰的抑制效果并不好。

上述问题的常见解决方法是使用自适应干扰对消器[11],但该方法要求信号和噪声不相关,而触摸屏的晃动可能正是因为手写力的变化,因此加速度与力之间具有一定的相关性,该方法不再适用。本文基于自适应滤波设计了一个干扰对消器,原理如图5所示。

图5 抗运动干扰对消器原理图

该对消器在没有触控操作的情况下训练其滤波权值,即基于自适应滤波器进行系统辨识,而当有触控操作时停止对滤波权值的调整,使用训练的权值进行干扰对消,令加速度对力的干扰为fn则有:

当Fn为0时利用最小均方(LMS)算法对权值进行训练,此时有:

4.2抗振动干扰设计

振动干扰产生的原因也是设备加速度状态的变化,只不过与运动干扰相比其频率更高。由于随着频率的增大,传感器在不同频段之间的特性差异较大,因此不宜使用抗运动干扰的方法进行处理。

通过实验发现振动干扰的来源有两个:一个来自于设备所处外界环境的振动;另一个是当用户单击触摸屏时所引起的加速度传感器的振动。这两类振动都是与待测力无关的零均值干扰信号,这种干扰信号可以通过自适应滤波来消除[12]。

子带自适应滤波器可以对信号的不同频率段分别进行不同的滤波处理[13],但它要求系统有较大的延时才能取得较好的结果有[14],因此不利于数据的实时采集,本文采取的滤波方案如图6所示。

图6 添加抗振动干扰后的干扰对消器

该方案直接采用可能含有振动噪声的加速度值进行抗运动干扰处理,在此过程中运动干扰被抑制,振动干扰也得到部分抑制,然后通过高通滤波器将加速度中的高频振动信号提取出来,使用自适应滤波器再次进行抗振动干扰自适应滤波处理,经过抗干扰处理后的输出结果如式(8)所示:

其中y1n用来逼近fn中的运动干扰成分,但由于an中还含有振动信号,故y1n将逼近fn中的部分振动干扰,而fn中的其余振动干扰将由y2n进行逼近。

4.3抗零点漂移设计

由于传感器安装应力变化、外界环境变化及温度漂移等因素的影响,设备会出现零点漂移现象,本文基于自适应滤波的原理,设计了一个零点漂移自适应调整器,其结构如图7所示。

图7 零点漂移自适应调整器

图7中bn表示零点漂移项,当无触控操作时待测力Fn为零,运动干扰项fn被抑制后也近乎为零,输出如式(9)所示。

式(9)中的b为零点漂移校准项,在无触控操作时进行自适应调整使b对零点漂移bn进行最佳逼近,b的调整算法如式(10)所示。

其与最小均方(LMS)自适应滤波器的调整算法类似,只不过其输入项为1,式中μ为步长系数。

5 实验结果与讨论

本文实现了一台五维手写信息采集设备,其实物如图8所示,为了适应移动环境,该设备进行了抗运动干扰和抗振动干扰优化设计,并进行了测试,图9~图11给出了z轴的测试结果。

图8 终端设备的实物图

图9 抗运动干扰测试结果图

图10 抗振动干扰测试结果图

图11 综合测试实验结果

5.1抗干扰测试实验

图9和图10分别为抗运动和抗振动测试实验的结果,测试方法是:在不接触触摸屏的情况下对设备施加周期性的干扰。为了消除零点漂移对结果的影响,这里仅对信号的动态部分进行分析。

图9(a)为直接基于4.1节式(4)进行计算得到的结果。图中去干扰结果曲线的峰峰值为0.73 N,噪声衰减1.82倍,波动较大。图9(b)为利用自适应滤波器进行抗运动干扰优化设计后的测试结果与图9(a)对比可以很明显地发现其输出波动小了很多,图9(b)中的峰峰值为0.22 N,噪声衰减5.93倍,抗运动干扰能力提高3.26倍。

图10(a)为直接根据公式(4)计算的抗振动干扰测试结果,由于加速度传感器对振动很敏感,振动噪声不但没有衰减,反而被放大了。图10(b)为自适应滤波处理的抗振动测试结果,图中包含两次振动。振动峰值已经被抑制,其峰峰值为0.18 N,噪声衰减2.91倍。

上述测试是在没有外力施加在触摸屏上时进行的,为了检验设备在正常使用情况下的综合抗干扰能力,用不含干扰的信号与干扰信号的动态部分合成一个含干扰的待处理信号。利用该合成信号得到图11所示的测试结果。

图11(a)为直接基于公式计算得到的结果,抗干扰效果很差。图11(b)为优化后的抗干扰测试结果,其去干扰后的平均误差为0.005 0 N,均方根误差为0.075 2 N。力传感器的精度为0.1 N,正常情况下,设备所受干扰小于测试时所添加的干扰,干扰抑制能力已满足需求。

5.2数据采集实验

本设备的应用场景定位于手写签名认证、书法模拟和手写运动分析等领域。利用五维手写信息采集设备的手写信息采集功能,本文实现了一个书法模拟App。该App利用API获得手写位置信息和力信息进行书法模拟。

书法模拟的基本规则为:(1)利用位置信息生成笔画轨迹,利用笔刷模型填充轨迹;(2)笔画轨迹的宽度由力的大小确定,力越大笔画越宽,但宽度应有一个极大值,本实验中使用反正切函数模拟;(3)笔画墨迹的浓淡由速度控制,书写速度越快墨迹越淡,本实验中使用分段线性函数模拟。

App的界面截图如图12所示。图中模拟的毛笔字仅进行简单的笔刷缩放和墨迹深浅处理便已初具形体,若作进一步的研究与建模则会有更好的效果。

图12 书法模拟App界面截图

6 结语

本文实现了Android系统对五维手写信息获取的系统级支持,并对手写力信息的采集进行了抗运动干扰和抗振动干扰优化设计,能够在移动环境下实现对力信息的准确采集。该技术有助于移动终端设备实现更丰富全面的手写力信息获取,能够为手写签名认证、手写生物密钥生成、手写运动分析等研究与应用领域提供基础工具。

参考文献:

[1]陈海强,罗健飞,温国华,等.基于笔纸墨物理属性的毛笔书法仿真[J].计算机辅助设计与图形学学报,2012,24(9):1134-1138.

[2]邢冲.支持笔交互的数字纸张建模与生成方法研究[D].安徽:中国科学技术大学,2009.

[3]颜烨.在力感应触摸屏上手写签名系统的设计[D].北京:北京邮电大学,2011年.

[4]Shimizu H,Kiyono S,Motoki T,et al.An Electrical Pen for Signa⁃ture Verification Using a Two-Dimensional Optical Angle Sensor [J].Sensors and Actuators A:P-hysical,2003,111(2):216-221.

[5]Gross D,Hauger W,Schroeder J,et al.Engineering Mechanics 3:Dynamics[M].Berlin:Springer,2011:182-191.

[6]Bhalla M R,Bhalla A V.Comparative Study of Various Touch⁃screen Technologies[J].International Journal of Computer Appli⁃cations,2010,68(6):12-18.

[7]Accardo A P,GennaM,Borean M.Development,Maturation and Learning Influence on Handwriting Kinematics[J].Human Move⁃ment Science,2013,32(1):136-146.

[8]吴宝元,申飞,吴仲城.应变式多维力传感器结构优化设计方法研究[J].传感技术学报,2010,23(10):1412-1416.

[9]刘鹏,卢潭城,吕愿愿,等.基于MEMS三轴加速度传感器的摔倒检测[J].传感技术学报,2014,28(4):570-574.

[10]韦德琼.基于Android系统的驱动模块的设计和实现[D].黑龙江:哈尔滨工业大学,2013.

[11]王旋.去除被测信号中同频背景噪声的研究[D].河南:郑州大学,2011.

[12]高云,周聪聪,田健,等.基于多传感器的无创血压测量系统的研究[J].传感技术学报,2015,28(5):763-767.

[13]赫金主编.自适应滤波器原理[M].第4版.郑宝玉等译.北京:电子工业出版社,2003:292-298.

[14]王冲,郑建生,郭文飞.子带自适应滤波器组参数的选取及其影响[J].计算机工程与设计,2012,33(5):2068-2072.

颜 瑞(1988-),男,苗族,硕士,主要研究方向为嵌入式系统,399814977@qq.com;

吴仲城(1968-),研究员,中国仪器仪表学会青年工作委员会委员与仪器仪表学会传感器分会理事,负责完成中科院重点项目、863、国家自然科学基金等多项。主要研究方向为人机交互、生物特征信息获取、数字签名等,zcwu@iim.ac.cn。

Design of 5D Handwriting Information Collection Device Based on Android System*

YAN Rui,LI Fang,HE Meng,LUO Jianfei*,WU Zhongcheng
(High Magnetic Field Laboratory,Chinese Academy of Sciences,Hefei 230031,China)

Abstract:Currently most touch screens cannot support the measurement of 3-D forces of handwriting.To address this issue,this paper proposes a design of device that extracts 5-D information of handwriting.By integrating a multidimensional force sensor under the touch screen,it acquired 3-D force and 2-D position information accurately.Be⁃sides,its onboard Android system was incorporated with our customized system service module,thereby fully sup⁃ports 5-D handwriting information measurement at the operating system level.For the interference produced in the mobile environment,it uses acceleration sensor combining with adaptive filter technology to suppress.The result in⁃dicates that the proposed scheme has the advantages of good feasibility and better anti-disturbance properties.More⁃over,users can enjoy the convenience of operating without stylus pen.

Key words:handwriting information;adaptive filter;multi-dimensional force sensor;Android;acceleration sensor

doi:EEACC:7230;721010.3969/j.issn.1004-1699.2016.02.012

收稿日期:2015-09-06修改日期:2015-10-31

中图分类号:TP216.2;TP212.9;TH823

文献标识码:A

文章编号:1004-1699(2016)02-0220-06

项目来源:国家自然科学基金项目(61273323);国家自然科学基金青年科学基金项目(61301058)