《电子技术应用》
您所在的位置:首页 > 其他 > 业界动态 > 基于头部永磁跟踪的计算机虚拟实现技术

基于头部永磁跟踪的计算机虚拟实现技术

2009-04-14
作者:牟 琳1, 陈冬梅2, 马晓杰3

    摘  要: 根据永磁体在三维空间的特定分布规律设计了一种基于永磁跟踪的残疾人计算机辅助系统——一种跟踪头部运动的装置。使用时将三轴磁场传感器置于人头部,实时地接收永磁体的磁场信号,采用磁场跟踪算法,得到三轴磁场传感器相对于永磁体的空间位置和姿势,进而得到人头部的运动方向和角度,并将这些方向和角度作为控制信号,控制屏幕上的鼠标动作,帮助操作者通过人机交互界面实现电脑屏幕鼠标控制。 

    关键词: 计算机辅助系统; 姿势输入; 永磁跟踪; 计算机虚拟实现技术

 

    虚拟现实技术是当前信息领域中的一项尖端技术[1],是利用特定的输入设备作为人和计算机的交互工具来模拟真实操作中的软硬件环境, 用户在操作过程中有身临其境的感觉。利用计算机虚拟现实技术可以帮助肢体残缺者顺利地操纵计算机[2]。 

    现有的残疾人辅助系统都较复杂,不仅使用不便还需要长时间的训练才能操作,而且价格要比一般的电脑超出几倍,无法进入实际应用领域。为帮助肢体残疾人使用计算机,本文开发了一种基于计算机虚拟现实技术和永磁跟踪技术的残疾人功能重建的计算机辅助系统。该系统通过对头部进行永磁动态跟踪, 并捕捉头部的运动轨迹, 通过模式识别的方法,实现了高精度、可靠的人-机接口, 使残疾人可根据该部位的运动代替鼠标操纵计算机的虚拟键盘, 实现对计算机的一系列基本操作。本系统较之单纯利用脑电或肌电的人-机接口有更高的识别效率和准确率,是一项非常有应用价值和前景的残疾人计算机辅助系统。 

1 基本原理 

    永磁体在空间的磁场分布具有特定的规律性,有具体的解析表达式[3]。当永磁体的尺寸远小于检测点和永磁体间的距离时,永磁体可等效为磁偶极子。故在实验中始终保持传感器和永磁体之间的距离在合适的范围内,因此,在本系统中可以将永磁体视为磁偶极子来计算。 

    磁偶极子会在它周围产生一定的磁场,其磁场强度与距离的关系可用公式(1)计算[5]: 

     

式中,为磁介质的相对磁导率,μ0为真空磁导率,为磁矩方向的向量,量的长度。当实验环境和磁体确定时, 因此,

    在本系统中,传感器放置在人的头部前额的位置,传感器会跟随人头部的运动而不断改变位置,其自身的坐标系也会相应地发生改变。设定一个固定的坐标系如图1所示。 

 

 

    相对于该固定坐标系来说,传感器的位置是改变的。在此固定坐标系中,永磁体的中心点(a,b,c)为坐标原点O(0,0,0),为z轴的方向,其中一个传感器的位置P表示为(x,y, z)。传感器与永磁体之间的向量可以表示为所以P点位置的传感器的磁场强度可以表示为: 

        

    三个坐标轴方向分量分别如式(3)、式(4)、式(5)表示: 

 

    由上式可知:Bx、By、Bz分别是(x,y,z)的函数,即B=f(x,y,z)。通过测量可以得到Bx、By、Bz的值,从联立方程可求出(x,y,z)的坐标值即所需要确定的头部运动的位置。 

    两个三维磁场传感器及其处理电路放置在人体头部前额处,实时地接收磁场信号,圆柱形永磁体固定在人体头部周围,用于发射磁场。系统采集到的信号是传感器相应位置处的磁场作用所对应的电压信号。根据磁场传感器的工作特性和系统的放大倍数,由电压信号可以得到传感器相应位置处的磁场强度信号。采用磁场跟踪算法[4]得到传感器相对于永磁体的空间位置和姿势,进而得到人体头部运动方向和角度,将这些方向和角度作为控制信号,来控制屏幕上的鼠标动作,帮助操作者通过人机交互界面实现对电脑屏幕鼠标的控制[5]。 

2 硬件设计 

2.1总体设计 

    本系统采用模块化设计,整个硬件部分主要由五大模块组成:三轴磁传感器、信号调理放大电路、A/D转换电路、微控制器和USB通讯电路。系统框图如图2所示。 

 

 

2.2 传感器的选择 

    本文选择三轴方向的适用于低磁场磁性的、高灵敏度(1mV/V/guass)的磁敏传感器HMC1023,这种磁敏传感器内部有由3组正交垂直的4个磁敏电阻组成的惠斯通电桥。当外加磁场平行于磁敏电阻内部磁化方向时,其阻值不变;当外界磁场方向偏离时,其阻值变低。若磁敏电阻中存在电流,其阻值也将发生变化,其大小随内外两磁场合成磁化方向与电流流向的相对关系而异;趋于同向者增大,背向者减小。磁敏电阻阻值的变化将引起电桥输出电压的变化。这样传感器就成功地把外部的磁场强度信号转换为相应的电压信号,从而可以测量空间任一点的三个正交方向的磁场分量。 

2.3 信号调理放大 

    由于永磁体的磁场强度与距离的三次方成反比,磁场强度衰减程度很大,所以在近距离和远距离处得到传感器输出的相应的电压值变化范围较大。因此设计了放大倍数可调的放大电路。 

    AD623仪表放大器是美国模拟器件公司推出的一种低价格、单电源供电(+3V~+12V)、输出摆幅能达到电源电压(通常称之为电源限输出,即rail to rail output)的仪表放大器。它具有很宽的共模输入范围和高的共模抑制比,通过外接增益调节电阻可使用户灵活地调节增益(1~1000)。增益与增益调节电阻的关系如下: 

    RG=100kΩ/(G-1)                                     (6) 

式中,RG为增益调节电阻的阻值,G为放大器的增益。 

    根据设计的需要,本文采用2个AD623对信号进行两级放大。经多路复用器选通后的差分信号接入到第一级放大器。经过第一级放大后,共模干扰得到了很好的抑制,微弱的差分信号被提取出来并放大了10倍。第一级放大电路如图3所示。

 

 

    第二级放大电路除了进一步对信号进行共模干扰的滤除和放大外,还利用一片MAX4634实现了放大倍数可调。通过用单片机控制MAX4634的通道选择来选择增益调节电阻,从而达到调节放大器增益的目的,增益可在20~1000 调整。第二级放大电路及增益调节电阻选择电路分别如图4、图5所示。 

 

 

 

2.4 模数转换(ADC) 

    为了提高精度,将传感器得到的信号转换为单片机可以处理的数字信号,本电路采用的MAX191 是12位模数转换电路,如图6所示。MAX191是高速A/D转换芯片,它的平均转换时间为7.5μs~8.125μs,即采样速率可以达到120kS/s左右,内置参考电压和内部时钟。本电路的A/D转换受单片机控制,单片机通过片选口和读写口启动A/D进行转换,转换完毕向单片机送出高电平,经单片机查询后,分两次读出转换数据的低8位和高4位。 

 

 

2.5 USB接口的硬件电路设计 

    USB接口芯片采用Philips公司的PDIUSBD12。该芯片符合通用串行总线USB 1.1版规范,内部集成有串行接口引擎(SIE)、320B FIFO存储器、收发器(Transceiver)和电压调节器;采用8位并行数据线连接到MCU,1位地址线用来区分写命令或读写数据;它支持3个双向端点,端点0为控制端点(用于响应主机的控制信号),端点1、端点2用于数据量的传输,其中端点0和端点1缓冲区的大小为16B(双向模式),端点2具有双缓冲区能保存256B(输入64×2,输出64×2)。端点还可配置仅为IN或者OUT成工作模式。此外,端点2可用于同步,批量或者中断操作。PDIUSB D12的连接电路示意图如图7所示。 

 

 

    外部输入的模拟信号经过多路模拟开关送到A/D转换器。微控制器控制A/D转换启动、并读取转换后的数据,将读取的数据组织成USB的帧格式,并放入USB接口芯片的缓存中。USB接口电路负责将缓存中的数据转换成串行的数据流通过USB总线发到上位机。 

2.6 AT89S52接口设计 

    微控制器采用Atmel公司的AT89S52单片机,它是8位微控制器,片内具有8KB Flash,256KB RAM。其接口电路设计如图8所示。 

 

 

3软件设计 

    本系统中的头部跟踪算法是在Matlab 6.5环境下实现的,然后通过程序接口链接到VC环境下使用。 

    系统软件的设计完全按照结构化的程序设计方法来完成,将整个程序细分为若干个子程序(模块),以方便调试与检查。开发系统采用Keil C51编译器和伟福仿真器。A/D转换结果的读入采用查询方式。通过查询MAX191的BUSY端的信号来判断转换是否结束。整个开发过程如图9所示。 

 

 

4 实验 

    固定系统中使用的三轴磁场传感器,使一均匀磁体沿X、Y、Z传感轴方向水平移动。记录磁体与传感器的距离,同时记录下不同距离时的AD623的输出电压(此电压是与永磁体在传感器处的磁场强度有关的数值),通过 MATLAB处理,得到了三轴磁场传感器与永磁体在不同的间距情况下各向磁感应强度的值,如图10所示(此处用电压代表磁感应强度值)。 

 

 

    由图10可知,本系统中磁体与传感器间的间距为150mm~350mm之间,在此间距之内,既可以把永磁体等效为磁偶极子模型进行计算,又可以防止距离过远磁场信号衰减太大,后续信号处理困难。 

    本实验系统的虚拟键盘的排列方式如图11所示,目前还处于实验阶段,由健康人进行模拟实验,仅仅依靠头部的运动,完成若干字符向计算机的输入工作。图12为实验时实验者头部运动时,系统软件跟踪头部运动的轨迹图,可以进行三维和二维的实时跟踪。 

 

 

 

    实验者以头部的平移来寻找相应的字母,每个字母的距离约为15mm。使用者与屏幕有一定的距离,字母的分辨率比较精确,找到相应的字母后,使用者以头部的上下或者左右幅度的运动来使光标移动范围覆盖整个虚拟键盘或整个电脑屏幕,利用光标停留在一个字母上一段时间(具体可以根据实际情况设定),来确定选中该字母键,或者利用光标停留时间的长短模拟一般鼠标的点击、双点击、选择、复制、粘贴等功能,由此完成文本的输入及简单的文字写作操作或者处理电子邮件,玩电子游戏等功能。 

    实验表明,本系统中的头部动态永磁跟踪功能可满足对头部运动的实时反应,可获得若干简单的空间运动模式。经过训练,使用者可以完成指定字符的输入,字母的输入速度可达到约22字/min,这与操练人员的熟练程度有关。对于系统的误操作,可以通过界面的cancel键采用重新输入的方式加以纠正,使用比较方便。 

    本文介绍的系统小巧轻便,普通人不需要经过长时间的训练即可操作。整个系统只需要在普通电脑的基础上,再配备大约500元左右的辅助设备就可以使用,价格低廉,非常适合日常应用,有一定的推广价值;另外,系统中使用了自己设计的带有USB接口的高速采集系统,实时性较好,能够实时控制人机界面进行英文字母或者汉字、阿拉伯数字的输入,具有很高的分辨率和容错性,操作灵活,鲁棒性较强。这对于那些无法操作电脑的残疾人来说是一个很好的工具。 

参考文献 

[1] MUNIER M, BENALI K. Transactional approach [A].IEEE Conference, Berlin, Germany, 1999:1926-1931.  

[2] KIM K H, KIM H K, SON W H. Artifact-based humancomputer interface for the handicapped.  M. Rauterberg (Ed.):ICEC 2004, LNCS 3166, 2004, 386-392. 

[3] INGARDEN R S, JAMIOLKOWSKI A. Classical electrodynamics. Elsevier Science Publishers B.V., Poland, 1985:220-222. 

[4] MEYER  K, WHITE A. A survey of position trackers.MIT   Press, 1992.  

[5] RODGERS A G. Advances in head tracker technology-a key contributor to helmet vision system performance and implementation.Society for Information Display International symposium, Digest of Technical Papers, 1991.

本站内容除特别声明的原创文章之外,转载内容只为传递更多信息,并不代表本网站赞同其观点。转载的所有的文章、图片、音/视频文件等资料的版权归版权所有权人所有。本站采用的非本站原创文章及图片等内容无法一一联系确认版权者。如涉及作品内容、版权和其它问题,请及时通过电子邮件或电话通知我们,以便迅速采取适当措施,避免给双方造成不必要的经济损失。联系电话:010-82306118;邮箱:aet@chinaaet.com。