新闻中心

EEPW首页 > 嵌入式系统 > 设计应用 > 两自由度振动偏移量实时采集设备的设计与实现

两自由度振动偏移量实时采集设备的设计与实现

作者:时间:2014-02-26来源:网络收藏

  光电鼠标的工作机理是采用一种基于CMOS成像的图像识别方法,通过一个感光眼,不断的对物体进行拍照,并将前后两次图像进行DSP处理,得到移动的方向和间隔,因此,光电鼠标芯片具有一种传感器的基本功能。振动的检测,其基本原理可以归结到一种位移的检测。只是此种位移是围绕某个基本点进行往复移动。因此设计了一种采用光电鼠标传感器原理进行振动检测的设备。

  该设备是完全从市场应用的角度进行设计的,设备等间隔连续采集到的△x和△y值经上位机应用程序可以绘制出设备的各种运动参数曲线(包括位移、速度和加速度曲线)并进行相应的运动学分析。

  采用现行的鼠标芯片,采集设备可以在速度≤1m/s,加速度≤160m/s2 范围内实现在精度为15.88mm,反应时间为0.156ms的捕获。其精确性能、高速性能和低廉的价格使得该采集设备具备了广阔的应用前景。

  1 总体方案设计

  系统框图如图1所示,光源照在基板上,该设备固定在待测量物体上。设备主要由ADNS-3080、CY7C68013两块集成芯片及外围电路组成,工作后,ADNS-3080通过其影像撷取系统(IAS)不断捕获基板的图像,经其数字信号处理器(DSP)时频分析并提取出特征值△x、△y,保存至相应的寄存器,并使运动触发寄存器(Motion_Burst)的标志位置1,等待读取;CY7C68013通过与作为SPI从设备的ADNS-3080进行通信,循环查询△x和△y的标志位,一旦发现置1,读取△x和△y值,并通过USB2.0接口向上位机传输。E2PROM采用了8KB的24C64,用于实现设备的C0或C2方式加载。CY7C68013采用端口模式模拟主SPI与ADNS-3080通信,与上位机数据传输采用USB中断模式。

  

  图1 系统原理框图

  2 设备硬件方案选择

  为充分减小系统的PCB板尺寸,设备使用了集成芯片、串行交换结构技术、USB供电等手段。集成芯片的使用还提高了设备抗EMI(电磁干扰)能力;USB2.0接口的使用提供了高速、可靠的数据通信和人性化的用户接口;非接触式的光电测量方法,避免了传统接触式测量中因磨损带来的误差,并可用于恶劣的环境,加大了设备的使用范围。

  2.1 ADNS-3080

  该集成芯片包括一个影像撷取系统(IAS),一个数字信号处理器(DSP)和一个四线串口(SPI接口)。

  IAS通过透镜和照明系统捕获精微的表面图像。这些图像经DSP处理后得出运动的方向和距离。DSP计算出相对位移值△x和△y,等待MCU读取。

  它具有如下特性:(1)高速运动的捕获-高达40inch/s和15个gn;(2)超过6400帧/秒的可编程帧速率;(3)支持高达1600cpi的分辨率。

  它虽然是一款高端鼠标芯片,但是其高性能的各项参数使其完全可以胜任绝大部分环境下物体的捕获。

  2.2 CY7C68013

  该芯片是Cypress半导体公司高速USB系列中的一款,它带有USB2.0串行接口引擎(SIE)、增强型的8051核(性能是标准51核的5~10倍)、8KB的RAM、高性能I/O口(最高支持96Mbit/s的传输)、支持三种方式(默认方式、C0、C2方式)加载设备。

  集成的SIE和公司提供的固件开发框架及丰富的参考源码大大降低了开发难度,只需简单了解USB通信协议即可开发出优秀的固件代码。8KB的RAM使其固件可以无限次下载;设备插上主机后,固件会自动从主机下载到设备RAM中,非常人性化;固件在主机上更改后再次编译到下载驱动(LoaderDriver)中即可实现对设备功能的增、删、改,无须专门的下载器和对应的设备下载接口。

  加载设备时,可以自由选择是否需要外接E2PROM来实现C0或C2方式加载。C0或C2方式加载可实现设备的更灵活的枚举功能,只需修改E2PROM中的VID(厂商标识符)、PID(产品标识符)即可使设备加载新的固件、新的USB驱动和相应的应用程序,轻易更改设备的功能;相比C0方式,C2方式可以实现固件直接从E2PROM中读取加载。无E2PROM连接时,设备采用默认方式加载实现设备的枚举和重枚举,节省硬件成本。CY7C68013使用自带I2C总线跟E2PROM连接。多种加载方式充分满足了用户的多样化需求。

  该芯片的枚举及重枚举的全过程如下:

  (1)设备上电后,复位电路直至PPL锁存24MHz晶振,工作频率稳定。

  (2)Cypress内核自动检测I2C总线是否有E2PROM。若E2PROM不存在或数据无效,则使用自带的硬件逻辑提供的默认VID和PID(默认值VID为0x04B4,PID为0x8613),以默认方式加载设备到上位机;若E2PROM数据有效,即从E2PROM读取VIDPID,并覆盖其自身的VIDPID,第一个字节为0xC0,则以C0方式加载设备,第一个字节为0xC2,则以C2方式加载。

  (3)上位机检测到USB设备插入,开始询问其IDs(通过在端口0发起一个GetDescriptor请求),最重要的是VIDPID。USB设备答复为??一个未下载的设备(nondownloadeddevice)。


上一页 1 2 3 下一页

评论


相关推荐

技术专区

关闭