0 卖盘信息
BOM询价
您现在的位置: 首页 > 技术方案 >消费电子 > 基于ATmega16L+nRF2401+ADXL203+LM78M05的无线鼠标设计方案

基于ATmega16L+nRF2401+ADXL203+LM78M05的无线鼠标设计方案

来源: 与非网
2019-05-23
类别:消费电子
eye 177
文章创建人 拍明

原标题:基于微加速度传感器的无线鼠标的设计

  

  研究基于微速度传感器的无线鼠标的设计,讨论了MEMS无线鼠标的软件、硬件设计和系统组成,给出了Matlab环境下系统的模型和算法。模拟结果说明:无线鼠标的设计是合理可行的,提出的二次积分近似算法是简捷有效的。

  引言

  微机械加速度传感器是一种典型的微机电系统(microelectromechanical system,MEMS),在航空、航天、汽车等领域已得到了越来越广泛的应用,但基于MEMS微加速度传感器技术的无线输入设备的研究和应用还不是很多,微加速度传感器用于输入设备的潜在优势还没有得到很好的应用。

  鼠标是最常用的电脑输入设备,随着PDA、笔记本、可穿戴式电脑等便携设备的流行,传统的鼠标已经满足不了移动办公的需要。现有的滚轮式或光电式鼠标都需要一个平坦的工作表面,且自身的体积也比较大。而基于微加速度传感器的无线鼠标则完全没有这个限制,它可以自由自在的在空中移动来控制电脑;可以做得很小,便于携带,可以灵活地应用于各种场合,例如:可以做成供残疾人使用的头戴式鼠标,供讲演者使用的移动式鼠标等。

  国外和港台地区有一些单位正在开展这方面的研究,例如:香港中文大学Lam等人提出了一种基于微加速度传感器的虚拟键盘鼠标系统(MIDS),能同时具备鼠标和键盘的功能;Prince在他的专利中提出了一种输入设备的方案,用连在手指上的力传感器来感测手指的动作,从而控制电脑输入;英国伯明翰大学Humphreys等人研制了一种三维鼠标,利用回转仪可以控制电脑屏幕上三维立体的旋转。本文采用美国AD公司成熟的微加速度传感器ADXL203,并集成Nordic半导体公司最新的射频收发器nRF2401和Atmel公司的ATmega16L微控制器,开发新一代基于微加速度传感器技术的MEMS无线鼠标,探索微加速度传感器在输入设备上的应用技术,并为进一步研究多维多功能的MEMS无线输入设备打下基础。

  系统原理与设计

  检测原理目前,常见的鼠标有2种,滚轮式和光电式。滚轮式鼠标是靠滚轮的传动带动X和Y轴上的译码轮转动,来感测鼠标位移的变化;光电式鼠标是用一个自带光源的光电传感器,跟随鼠标的移动连续记录它途经表面的“快照”,这些快照(即帧)有一定的频率、尺寸和分辨力,而光电鼠标的核心——DSP通过对比这些快照之间的差异从而识别移动的方向和位移量,并将这些位移的信息加以编码后实时地传给电脑主机。

  而基于MEMS技术的无线鼠标是用微加速度传感器实时测量鼠标运动的加速度,经过两次积分转换为位移信号传输给主机,来控制光标的移动,从而实现鼠标的功能。

  硬件设计如图1所示,整个无线鼠标系统分为2个子系统,远端子系统和主机端子系统。

图1无线鼠标系统结构框图.png

  图1无线鼠标系统结构框图

  远端子系统由微加速度传感器、微控制器和nRF2401射频收发器组成。微加速度传感器采用美国AD公司生产的ADXL203微传感器,微控制器采用Atmel公司生产的ATmega 16L微控制器,该微控制器附带有8路10位可编程的A/D转换电路,可以实时地将ADXL203加速度传感器输出的加速度模拟信号转换成加速度数字信号。

  ADXL203加速度传感器在加速度为0时输出电压为2.5V,为提高A/D转换的精度,本文利用ATmega 16L内置的差分放大功能,用差分信号将这2.5V电压给滤掉,并将差分后的电压信号放大到与A/D转换的参考电压相匹配。系统供电采用电器中常见的9V电池,连接一个LM78M05稳压贴片得到恒定的5V电压,供各个模块使用。

  主机端子系统由nRF2401射频收发器,串行传输接口芯片和另一个ATmega 16L微控制器组成,其中,RS232串行通信接口芯片采用的是Maxim2IC公司的MAX233芯片,作用是将微控制器输出的5V TTL/CMOS电平转换为EIA/TIA-232-E电平,以便与电脑主机进行串行(RS232)通信。

  软件与算法设计鼠标在人的操纵下移动,微加速度传感器便会实时地输出鼠标运动的加速度大小和方向,ADXL203传感器的量程为±1.7gn,电压灵敏度为1000mV/gn,这个电压信号经过差分放大5.0/1.7倍后,通过微控制器A/D转换功能变成与加速度大小对应的数字信号,加速度经过两次积分,便变成了鼠标移动的位移信号,然后,再经过编码,并通过nRF2401射频收发器将位移信号发射出去。

  当加速度传感器输出电压为a时,经A/D转换得到的数字量大小为

A/D转换得到的数字量大小.png

  式中[ ]表示取整数;a为加速度传感器输出的电压大小,V.ATmega 16L单片机最大采样速率可以达到15000次/秒,本文采用1000次/秒;即每1ms采样一次,每25ms便向电脑报告一次相对的位移改变量,以保证屏幕上鼠标指针运动的精确和平滑,则每一次报告的位移改变量包含25次对加速度采样的数据。可以采用近似算法来对加速度信号进行二次积分,得到位移信号。

  编码的目的是将X和Y方向的位移改变量,连同鼠标按键的实时信息,按照标准的Microsoft鼠标协议要求的格式进行编码,以便最后发送到主机的信息能够被电脑正确识别,从而使电脑能正确处理发送给它的位移信号,来正确控制鼠标光标的移动等动作。表1表示的即是标准的鼠标协议规定的三字节数据包格式,第1个字节记录的是左右按键的信息和鼠标X,Y位移的最高2个字位的数据,按键按下时,对应的位置1,否则,置0;第2和第3个字节分别记录X和Y方向位移的低6位数据。位移值的范围取-127~+127,再大的位移改变量会自动溢出。

  表1 Microsoft标准鼠标协议数据包格式

表1 Microsoft标准鼠标协议数据包格式.png

  系统的基本组件

  MEMS微加速度传感器本文采用美国AD公司生产的电容式微加速度传感器ADXL203,如图2所示,该加速度传感器是利用各向异性刻蚀、阳极键合等硅整体加工工艺在硅材料上制造出来的,并在同一个基片上集成一些外围电路,对输出的加速度信号进行放大调制等处理后,可以同时在X轴和Y轴2个方向输出精确的加速度信号。

图2 ADXL203加速度传感器原理图.png

  图2 ADXL203加速度传感器原理图

  ATmega16L微控制器ATmega16是Atmel公司生产的基于增强的AVR RISC结构的低功耗8位CMOS微控制器,本文选用ATmega 16L微控制器,可以满足系统要求,且存在比较大的扩展性。

  无线收发器件本文采用Nordic半导体公司的nRF2401射频收发器来实现位移数据的无线传输。因为nRF2401的优异性能非常适合无线鼠标的设计,并且,其内置的多点通信控制可以为系统提供很大的扩展空间。nRF2401为2.4 GHz全球开放频段产品,采用0.18μm工艺设计。

  系统和算法的Matlab模拟

  AD公司给出了ADXL203微加速度传感器的Simulink模型(参见AD公司主页),本文以此为基础,构建了基于该微加速度传感器的无线鼠标系统模型,如图3所示。

图3无线MEMS鼠标系统的Simulink模型.png

  图3无线MEMS鼠标系统的Simulink模型

  其中,方框内的子系统模型即是封装好的ADXL203微加速度传感器模型。模型最后将采样的加速度值存入文件中,然后,通过编程来模拟微控制器中运行的不同积分算法,用Matlab来图示各个算法的模拟结果,对于系统算法的比较和选择有很大帮助。

  上文通过假设每一次加速度采样间隔内鼠标做匀加速度运动,提出了一种二次积分的近似算法,便于编程实现,可以利用鼠标系统的Simulink模型,结合编程模拟该算法,来考察它的精确性。

  程序取采样周期为1ms,发送周期为25ms,最后,Matlab模拟的结果如图4和图5所示。

  由图4和图5中可以看出:由于该二次近似积分算法作了很大的简化,再加上加速度传感器的噪声干扰和信号延迟、A/D转换的误差等多方面的因素,当鼠标位移较大时,存在一些误差。但当鼠标位移在12cm以内时,精确度是非常理想的,这足以满足鼠标的一般应用,更大的移动距离可以通过改变二次积分的算法来实现。

  光电和滚轮式鼠标的分辨力通常用dots per inch (DPI)来表示,即每英寸(2.54cm)的点数,它表示鼠标在物理表面上每移动1英寸(约2.54cm),光学传感器所接收到的坐标点数。由于光学引擎中CMOS矩阵的像素密度和透镜的放大倍数限制,常见光电鼠标的分辨力一般在200~400DPI.对于MEMS鼠标,可以用鼠标每移动1英寸(2.54 cm)对加速度采样的次数来表示分辨力的大小。

  MEMS鼠标中微控制器对加速度的最大采样速率可以达到15000次/秒,本文只需采用1000次/秒时,取鼠标1s移动的位移为10cm,则鼠标的分辨力便达到了1000×2.54/10=254DPI,已经达到了常见鼠标的分辨力,并且,更高的分辨力可以通过提高加速度的采样速率来实现,理论上,最大值可以达到15000/1000×254=3810DPI,远远高于一般光学鼠标的分辨力。

图4 X轴的鼠标实际位移与模拟位移对照图.png

  图4 X轴的鼠标实际位移与模拟位移对照图

图5 Y轴的鼠标实际位移与模拟位移对照图.png

  图5 Y轴的鼠标实际位移与模拟位移对照图

  结束语

  本文详细讨论了基于微加速度传感器的MEMS无线鼠标的软件、硬件设计和系统构成,并给出了Matlab环境下系统的simulink模型和算法,模拟的结果证明:无线鼠标的设计是合理可行的,文中提出的二次积分近似算法是简捷有效的;文中讨论的二维鼠标的设计技术,能为进一步研究多维多功能的MEMS输入设备打下很好的基础。本文选择硬件时,充分考虑了系统向多维和多功能扩展的可能性,可以在此二维鼠标的基础上再添加一些器件,构成功能更多更完善的MEMS输入设备,例如:可以再添加一个微加速度传感器来感测Z轴的加速度,从而实现三维鼠标,可以实现对三维立体旋转等的控制;也可以利用nRF2401射频收发器内置的多点通信控制的特性,再多增加几个接收模块,可以同时控制多台主机,或多增加几个发射模块,用几个输入设备来控制同一台主机,以适应不同应用场合的需要。


责任编辑:David

【免责声明】

1、本文内容、数据、图表等来源于网络引用或其他公开资料,版权归属原作者、原发表出处。若版权所有方对本文的引用持有异议,请联系拍明芯城(marketing@iczoom.com),本方将及时处理。

2、本文的引用仅供读者交流学习使用,不涉及商业目的。

3、本文内容仅代表作者观点,拍明芯城不对内容的准确性、可靠性或完整性提供明示或暗示的保证。读者阅读本文后做出的决定或行为,是基于自主意愿和独立判断做出的,请读者明确相关结果。

4、如需转载本方拥有版权的文章,请联系拍明芯城(marketing@iczoom.com)注明“转载原因”。未经允许私自转载拍明芯城将保留追究其法律责任的权利。

拍明芯城拥有对此声明的最终解释权。

相关资讯

方案推荐
基于MC33771主控芯片的新能源锂电池管理系统解决方案

基于MC33771主控芯片的新能源锂电池管理系统解决方案

AMIC110 32位Sitara ARM MCU开发方案

AMIC110 32位Sitara ARM MCU开发方案

基于AMIC110多协议可编程工业通信处理器的32位Sitara ARM MCU开发方案

基于AMIC110多协议可编程工业通信处理器的32位Sitara ARM MCU开发方案

基于展讯SC9820超低成本LTE芯片平台的儿童智能手表解决方案

基于展讯SC9820超低成本LTE芯片平台的儿童智能手表解决方案

基于TI公司的AM437x双照相机参考设计

基于TI公司的AM437x双照相机参考设计

基于MTK6580芯片的W2智能手表解决方案

基于MTK6580芯片的W2智能手表解决方案