新闻中心

EEPW首页 > 嵌入式系统 > 设计应用 > 基于ARM和加速度传感器的电子画笔设计

基于ARM和加速度传感器的电子画笔设计

作者:时间:2008-04-02来源:收藏

  摘 要:介绍了当前不同类型的电子笔,比较了它们之间的优缺点并应用微控制器ADuC7022、三轴低量级加速度传感器MA7260Q和无线USB接口芯片CYRF6934实现了基于空间加速度计算的无线电子画笔的设计。

本文引用地址:http://www.eepw.com.cn/article/81064.htm

  关键词:ADuC7022 加速度 无线USB 电子笔

  随着计算机的普及,电子笔作为新兴的人机交互工具发展迅速。在国内,汉王公司在手写识别方面一直居领先地位,引领着国内电子笔的发展。国外则将笔迹与办公软件关联起来,建立了数字墨水的概念。2001年6月,爱立信宣布推出世界上第一支数字笔—— Chat2penCHA-30。该产品充分利用了蓝牙(Bluetooth)无线技术和GPRS网络,可传输手写文本并与移动电话、计算机和互联网进行互动通信。虽然它的外观和书写方式与一支普通的笔相同,但Chatpen可以借助一种印在普通纸上几乎看不见的点模式“读”出它的位置。这些信息通过蓝牙和GPRS移动电话,消费者即可同时在纸上以数字方式书写。用户将发现自己不再仅限于基于文本的短消息或电子邮件,只要使用Chatpen就可以通过移动电话、PC或掌上电脑(PDA)随时发送手写便条。画下来或写下来的任何内容都可以立刻传送,信息处理变得更个性化,且因无需使用字母输入而大大简化了发送文本信息的过程。

  作为电子笔背后的关键技术,笔迹识别一直是人们研究的重点。总体上,电子笔按照定位方式的不同可以划分为四类:射频定位型、图像识别型、压感定位型和加速度定位型。射频定位型电子笔需要在书写的平面附近或书写板上放置声波发生器,借助发生器发出的超声波完成笔触的三维定位,精度高但结构和算法复杂。图像识别型电子笔应用图像识别算法识别安放在笔头部分的微型摄像机扫描的笔迹画面,笔迹最接近原迹。压感型电子笔需要压感板感受笔尖压力弯成笔记的复原。加速度型电子笔应用运动学算法,通过对加速度的运算获得笔尖的运动轨迹,结合笔迹分析算法即可将笔迹复现出来,因而结构简单,易于实现。但因受传感器解析度的制约,市面上一直没有此类的成熟产品。

  本方案采用飞思卡尔半导体的MMA7260Q三轴低量级加速度传感器实现了笔触的空间定位。无线USB器件为电子笔提供了即插即用的连接。本电子笔使用Cypress的2.4GHz射频SoC CYRF6934作为无线USB网络收发器件,只要在PC端将Cypress 的Encore2 无线USB网桥连接到PC机的USB口,电子笔即可向PC机进行单向的数据传输。

  1 硬件规划

  在本设计中,使用MMA7260Q测量电子笔X、Y、Z三个轴方向上的加速度,使得软件以此实时计算笔尖的位置,进而生成笔迹。

  微控制器ADuC7022采集到加速度传感器输出的信号后,使用片上ADC完成电压信号到加速度数据的转换并进行信号的与处理,最后通过SPI接口发送到无线USB接口芯片CYRF6934,将数据传送到PC机进行后处理。

  系统使用高能锂电池供电。为了获得尽可能长的电池寿命,所有芯片工作在3.3V电压,以减少开关损耗;在微控制器检测到电子笔处于静止状态后,微控制器软件将使无线USB接口芯片进入睡眠状态,进一步减少功耗。

  2 微控制器电路

  ADuC7022是ADI公司的新一代基于ARM7TDMI 32bit RISC内核的精密模拟微控制器,片上集成了10通道12位的ADC(1MSPS)、电压比较器、62Kbytes FlashROM和8KbytesSRAM,最高处理能力达40MIPS。其模拟外设包括多达10通道的采样率为1MSPS、分辨率为12bit的精密模数转换器(ADC)、一个温漂优于10ppm/℃的精密带隙基准电压源。其他外设包括片内可编程逻辑阵列 (PLA),同步、异步串行接口等。其片上的PLL电路允许使用频率较低的外部晶振,以减少系统的EMI。串行接口包括UART,SPI和2个I2C,用于下载/调试的JTAG端口,4 个定时器, 14个通用 I/O引脚。CPU时钟高达45MHz,片内晶体振荡器和片内PLL。

  ADuC7022工作在2.7V~3.6V,在最高工作频率41.78MHz时仅消耗40mA电流。此外,ADuC702240脚6mm×6mm LFCSP封装可以显著减小电路板尺寸,使其比大多数单片机更适合于对体积和功耗要求较为苛刻的系统。

  在本设计中,ADuC7022 ADC工作在单端模式,ADC模块的ADC0~ADC2连接到MMA7260Q三轴加速度输出引脚,ADC2连接到电池正极,监测输入电池电压,在电池电压降低到接近LDO最低输入电压后点亮LED提醒用户更换电池。微控制器的P0.0和P0.1脚连接到MMA7260Q的SEL1和SEL2引脚,作为加速度灵敏度的控制信号。

  ADuC7022的串行接口提供了SPI、UART、I2C接口。ADuC7022的I/O口为复用接口,用户通过设置SPM模块的控制寄存器可在GPIO、UART、UART/SPI/I2C和可编程逻辑阵列中做出选择。本文硬件使用了一个工作于Master模式的SPI模块,连接到无线USB模块。微控制器的原理图如图1所示。

  

 

  3 加速度传感器

  MMA7260Q是飞思卡尔半导体推出的单芯片型三轴低量级加速度传感器,可以精确地测量X、Y、Z三个方向下低量级的下降、倾斜、位移、定位、撞击和震动误差。通过选择MMA7260Q的灵敏度,可以按1.5g、2g、4g和6g不同量级(g)的重力加速度灵敏度进行设计。MA7260Q使用MEMS工艺制造,在6mm×6mm×1.45mm的体积内集成了加速度传感器和低通滤波、温度补偿等信号调理电路,而且预置了全量程0g偏置。它的封装尺寸很小,只需较小的板卡空间即可。此外,MMA7260Q可以运行在2.2V~3.6V的低电压,工作时仅消耗500?滋A电流,并配置了3μA睡眠模式及1.0ms快速电源响应,另外还提供快速启动和休眠模式。这些特性极大地延长了电子笔电池的续航能力并能为外观设计预留足够的空间。

  SEL1和SEL2为灵敏度选择输入引脚,对应灵敏度的真值表如表1所示。加速度传感器输出电压VOUT为:

  

 

  

 

  其中,VOFFSET为0加速度偏置,ΔV/ΔG为加速度灵敏度,1G为地球重力, θ为倾斜角度。

  Xout、Yout和Zout分别为X、Y、Z三个方向加速度信号的输出引脚,输出电压与加速度的关系如(1)式所示。MMA7260Q的0g偏置电压为1.65V,对于1.5g的灵敏度,每轴输出电压在0.85V~2.45V之间。

  加速度传感器电路如图2所示。在MMA7260Q的输出上设置了RC滤波器,用于滤除内部开关滤波电容时钟的干扰,提高测量的精度。

  

 

  4 无线USB接口

  CYRF6934是Cypress半导体的2.4GHz射频SoC无线USB网络收发器件。该无线收发器工作在2.4~2.483GHz的ISM公共频段内,突破了27MHz、400MHz以及900MHz众多系统共有的各种限制,使用户能够在世界范围内推广使用其解决方案,而无需受地区性频率要求的约束,从而具备了全球通用性、合理的功率规格以及更高的通信频宽。借助DSSS技术,CYRF6934可以避免来自如2.4GHz频段中802.11b、蓝牙(Bluetooth)等其他系统的信号干涉,以及来自无绳电话和微波炉的无线辐射;CYRF6934的工作电压范围为1.8~3.6V,作用有效范围10米;配置了62.5kbps的数据吞吐量和高达2MHz传输频率的SPI微机接口与微控制器进行通讯,可实现62.5kbps速率的双向或单向RF传输,平均延时小于10ms。在没有数据传输时,CYRF6934可在微控制器的控制下进入低功耗模式,降低系统能耗。

  无线USB接口电路如图3所示。微控制器采集的加速度数据在经过预处理后通过SPI接口发送到CYRF6934。CYRF6934对数据进行调制后通过PCB上的印制天线发送给PC端的无线USB网桥。芯片所有VCC上使用0.1uF电容去耦并使用一个10uF电容作为充放电电容。

  

 

  5 软件设计

  作为底层的硬件驱动程序,软件需要完成系统初始化、数据采集处理和传送等工作。系统初始化主要包括微处理器的堆栈、队列和内部控制寄存器的初始化、MMA7260Q加速度灵敏度的选择和CYRF6934控制寄存器的初始化。汇编语言完成微处理器堆栈、队列的初始化并引导系统执行C语言中的main()函数。C语言程序完成剩余的初始化任务后开始采集数据、处理数据和发送数据的循环。

  软件设计中除了使用MMA7269Q传感器的加速器解决方案外,还可通过MMA7260Q的参照设计开发工具中提供的各种组件。针对需求进行开发,以提高软、硬件效率,并最大程度地减少因软件冲突导致的系统工作不稳定的因素。

  同时使用KIT3109MMA7260Q的硬件环境完成对MMA7269Q开发和测试并进行全面评估,加快产品的开发速度。软件的流程图如图4所示。

  

 

  完成驱动程序设计后,设计应用程序在访问驱动程序时,需要用到一些Windows系列操作系统的专用API函数。由于这些函数参数比较多,所以可以开发一个动态链接库,使用户开发应用程序涉及不到底层驱动设备的操作,可以和普通API函数一样操作硬件。整个系统的结构如图5所示。

  

 

  应用这种分层的结构,用户程序可以通过dll读写设备。dll提供给应用程序的接口函数包括初始化设备、关闭设备、读写端口等。这样,在应用程序中加入自己的动态链接库后,就可以使用inPortb和out-portb来操作端口了。

  由于电子笔的应用前景和市场前景非常广阔,现在世界上一些主要的相关厂家都在竞相开发和推出具有各自特色的新产品。本设计方案将无线通信的优点与传统的USB接口有机地结合起来,不仅能提供较高的数据传输率,而且改进了数据的接入方式,同时MMA7260Q三轴低量级加速度传感器和SoC CYRF6934无线USB网络收发器凭借其完美的性能和低成本,可以满足无线领域中非网络端的需求,并且使传输系统更加方便、可靠。

  本电子笔在不改变人们笔纸交流传统方式的前提下,实现超越键盘在普通纸(或任意介质)上自然手写输入,犹如给人们提供一把开启信息时代新大门的金钥匙。它将加速度结构与无线网络结合起来,具有结构简单、工作可靠、数据传输方便和即插即用等诸多优点。本电子笔的推广应用必将成为人们推动社会信息化的超强助手和促进办公自动化的工具,在一定意义上实现电脑和手机随笔行,在市场上占有一席之地。

  参考文献

  [1] Analog Semiconductor. Precision analog microcontroller 12-bit analog I/O, ARM7TDMI MCU Rev A. 2006.

  [2] Freescale Semiconductor. ±1.5g-6g Three axis low-g micromachined accelerometer. 2006,2.

  [3] Cypress Semiconductor. WirelessUSBTM LS 1-way hid networks. 2003,8.

  [4] Cypress Semiconductor. WirelessUSB LR 2.4GHz DSSS radio soc. 2005,3.

  [5] Cypress Semiconductor. WirelessUSBTM dual antenna design layout guidelines. 2005,3.



评论


相关推荐

技术专区

关闭