基于微加速度计的无线教鞭的设计

分享到:
12358
下一篇 >

摘要:为弥补多媒体教学中激光笔的不足,提出了一种基于微加速度计的无线教鞭系统,它不仅具有激光笔上下翻页的功能,而且能在空中自由灵活移动实现高精度点击的功能,该系统以微加速度计ADXL345作为信号检测元件,并采用低功耗低成本微控制器AT89S52和RF芯片nRF24 L01进行信息处理与无线传榆,符合人体工程学设计,*大限度地满足人们使用鼠标时在手感以及舒适度和使用习惯方面的要求。

目前多媒体教学或会议演示中已经用到无线教鞭,但是更多的只能用来文档的翻页,所以使用时还得配合有线或无线的鼠标,正由于这种传统的机械式或光电式鼠标不能脱离平坦有摩擦的工作表面,自身体积大,工作空间受限制,移动不自由,所以我们开发出了基于微加速度计的无线教鞭。

国外和港台地区有一些单位早些年已经开展了这方面的研究,近些年国内对该技术的研究日趋成熟,2002年东南大学的李宏生申请了名为“移动式全电子惯性鼠标”的实用新型**,它利用加速度计检测到的加速度信号经过积分并分频后产生速度脉冲,再配合专用的鼠标IC芯片实现。2004年清华大学工程物理系张乐平成功设计了一种基于加速度计的惯性鼠标,通过倾斜使用1的方式,获得了很好的效果。2006年上海交通大学微纳科学技术研究院黄得志等人成功设计出了一种基于微加速度传感器的无线鼠标,以上3种鼠标可以说做的很好,但是他们使用专门的编码和解码芯片或专用的AD转换、鼠标IC芯片或高性能的微控制器,这样相应地增大了板的体积,也增加了成本,我们基于此开发出了基于微加速度计ADXL345的无线教鞭,该加速度计集成了AD转换功能可以将采集的加速度信号转换成数字信号,微控制器采用功耗小、价格低的AT89S52,它的无线传输距离能达到30~60 m,是传统鼠标的2~4倍,能在教师和会议室的任何位置遥控主机端光标的动作,**的结合了传统鼠标和激光笔的功能,体积可以做的很小,便于携带,灵活应用与各种场合,并且该无线教鞭符合人体工程学的设计,能预防鼠标手的出现。

1 系统整体设计

本项目设计分为两部分,远端用户控制子系统和主机端信号接收子系统。远端用户控制子系统负责采集鼠标位移信息和按键信息,并发送给主机端信号接收子系统。主机端信号接收子系统负责对接收到的信息进行编码并与计算机进行通信,控制计算机执行相关操作。

远端子系统由微加速度计、微控制器和无线射频接收器组成。首先,远端子系统采集微加速度计ADXL345的信号,将其通过特殊的积分算法转化为位移量。然后,远端子系统综合位移信号和按键信号,按照无线模块定义的格式对信号进行编码、*后通过无线射频模块将编码好的数据发送给主机端子系统。

主机端子系统由无线射频收发器、微控制器和USB控制芯片组成。USB控制芯片USBPD1D12负责主机端子系统与上位机之间的USB通讯控制。主机端子系统通过USB接口与上位机相连后,上位机操作系统会自动加载HID类设备的驱动程序,完成主机端和上位机的连接。然后主机端微控制器接收无线模块nRF24L01传输的位移和按键信号,进而控制光标的移动和按键的操作。

如图1所示,为远端用户控制子系统和主机端信号接收子系统的结构方框图。

2 系统硬件设计

2.1 远端子系统硬件电路设计

1)微加速度计模块

ADXL345是ADI公司的三轴数字加速度传感器,工作原理是首先由前端感应器件感测加速度的大小,然后由感应电信号器件转为可识別的模拟电信号,ADXL345中集成了AD转换器,可以将此模拟信号数字化,输出的是16位的二进制补码。*值得一提的它集成了一个32级先进先出

{ unsigned int Acceleration[2];

Multiple_Read_ADXL345();

Acceleration[0]=BUF[1];

ACCeleration[0]=(ACceleration[0]<<8)|BUF[0];

Acceleration[1]=BUF[5];

Acceleration[1]=(Acceleration[1]<<8)|BUF[4];

}

2)微加速度计ADXL345与普通鼠标精度的比较

现在市面上普通光学鼠标主流分辨率为400DPI,即每移动1英寸可反馈400个不同点的坐标,也即该鼠标的分辨率为25.4 mm/400=0.06 35mm。而ADXL345采用13位或10位的分辨率模式,此模式可以通过DATA_FORMAT寄存器(地址0x31)进行设置,除此之外,该寄存器还可以没置g的范围,有±2 g,±4 g,±8 g,±16 g,该教鞭选择10位模式,±2 g已经能满足对分辨率的要求,此时分辨率为4g/1024LSB=3.9mg/ LSB,我们是将采集到的加速度数据采用16进制数字方式存储在寄存器中,然后取出数据重建划分步长后,通过无线传送至接收端控制鼠标的移动,而USB鼠标报告描述中规定,若接收到的数据为1则移动一个像素,假设尺寸为300mm*190 mm的14寸显示器,分辨率设置为1 024*768,那么横向*小点间距为300 mm/1 024=0.293 0 mm,虽然这个数据没有普通光学鼠标高,但是对于一般教鞭已经足够,*重要的是我们可以通过软件设置步长,可以在教鞭微动的时候做出准确移动,在需要情况下大幅晃动教鞭能够快速将光标移动到屏幕边缘,符合人体工程学的要求,并且我们可以改变g值,分辨率模式及步长来自由调整教鞭的移动。设置的步长程序如下:

3.2 主机端子系统软件设计

图3为接收端主程序流程图,该接收端软件部分主要包括:PDIUSBD12固件驱动,USB设备的枚举过程。为了使软件可移植性强、易维护,采用分层的方法编写PDIUSBD12的驱动程序。USB驱动程序分成接口和设备控制驱动层、协议层和应用层。应用分层的方法编写的程序条理清晰,可移植性好。而USB HID类是比较大的一个类,HID类设备属于人机交互操作的设备。使用HID设备的一个好处就是,操作系统自带了HID类的驱动程序,而用户无需去开发很麻烦的驱动程序,只要直接使用API调用即可完成通信。所以我们将USB设备枚举成HID设备,这样就可以不用安装驱动而直接使用。USB设备的枚举过程实际上就是告知PC设备描述类型。当插入USB设备后,主机会向设备请求各种描述符来识别设备,包括5个标准描述符:设备描述符、配置描述符、接口描述符、端点描述符、字符串描述符和3个HID设备类特定描述符:HID描述符、报告描述符、实体描述符。当主机从它的描述符中知道了能够知道的所有信息后,便开始为这个设备安装驱动程序。此时USB枚举过程结束,设备可以正常使用了。

4 结束语

本文应用微加速度计和无线RF模块,实现无线遥控的鼠标操作。遥控有效距离可达30~60 m,功耗小,成本低,而且遥控无指向性,能大大增强多媒体的人机交互性能。而且该成品外观设计合理,手感舒适,符合人体工程学设计,能防止鼠标手的出现。

你可能感兴趣: 设计应用 图片 加速度计 操作系统 微控制器
无觅相关文章插件,快速提升流量