资源目录
压缩包内文档预览:
编号:512059
类型:共享资源
大小:2.43MB
格式:RAR
上传时间:2015-11-11
上传人:QQ28****1120
认证信息
个人认证
孙**(实名认证)
辽宁
IP属地:辽宁
6
积分
- 关 键 词:
-
毕业设计
- 资源描述:
-
DZ045光电鼠标及其应用,毕业设计
- 内容简介:
-
1 第一章 前言 1.1 鼠标的发展历史 鼠标自从诞生到今天,已经有 38 个年头了,这 38年来,鼠标无论在性能还是工作原理上都有了许多变化。“ mouse”换代发展反映了计算机技术的普及和应用电子技术的突飞猛进。同时也证明了一个结论:原创 +科技进步 =产品的生命。 曾经获得计算机界最权威的“图灵奖”的道格拉斯 ?恩格尔巴特( Douglas Englebart)博士于 1968年 12 月 9日在 IEEE会议上展示了世界上第一个鼠标。如图所示:一个木质的小盒子,盒子下面有两个互相垂直的轮子,每个轮子带动一个机械变阻器获得 X、 Y 轴上 的位移,在盒子的上面则有一个按钮开关提供连通信号。鼠标的这款鼻祖与今天的鼠标结构大不相同,甚至还需要外置电源给他供电才能正常工作。然而他却引领了一个科技领域的几次革命,带给计算机工作者一次次的欢欣鼓舞。 第一个 mouse 1983 年苹果公司受到仙童公司著名 STAR 计算机的启发,在当年推出的 Iisa 电脑上第一次使用了鼠标作为 GUI( Graphical user interface)界面操作工具。这款电脑虽然不成功,但它为转年推出的 Macintosh以及 MACOS操作系统提供了经验,鼠标的黄金年代来临了。这个 时候的鼠标还是老式的机械式鼠标,但是对于最初的产品已经有了新的改良 ,鼠标球取代了不灵活的单滚球,单键设计被更加灵活的双键 /三键所取代,可供电的标准 RS232 串行口设计取代了早期的独立接口,现代鼠标的基本结构已经成型。 1982 年罗技公司发明的世界第一款光机鼠标,光机结构是鼠标发展史上最大的发明。也就是这个时候现在鼠标的结构设计基本成熟,光机鼠标统治了鼠标市场达 18 年之久。 1984 年罗技的第一款无线鼠标研制成功,那时候还依靠红外线作为信号的载体。虽然说这款产品由于性能方面的诸多问题而告失败,但是罗技在无线方面 的创新也给后来的产品带来了发展的潜能。 1996 年由微软发明的鼠标滚轮是鼠标发展史上十分重大的发明,今天滚轮已经成为鼠标的标配之一。现在流行的滚轮设计一般包括两种,一是机械式滚轮,也就是用滚轮来带动nts 2 一个机械电位器以获得信息,微软的很多鼠标都是采用这种结构。它的优点就是滚动比较精准,但是机械结构存在磨损问题。 另一种滚轮就是光电式滚轮,罗技等大多数厂商都是采用这种设计。它的滚轮内部就是一个栅轮。在栅轮的两侧分别有一个发光二级管和光敏二级管,工作原理上和光机鼠标获得滚动信息的方式是一样的。 微软的机械式滚轮鼠 标 1999 年微软与安捷伦公司合作,推出了 Intellimouse Explorer 鼠标,揭开了光学成像鼠标的时代的序幕。其中 Intellieye 定位引擎是世界上第一个光学成像式鼠标引擎,它的高适应能力和不需清洁的特点成为当时最为轰动的鼠标产品,被多个科学评选评为 1999 年最杰出的科技产品之一。 2000 年罗技推出的光电鼠标 2000 年,罗技公司也推出了同类的光电鼠标产品,使用安捷伦 H2000 光学成像引擎,性能上和 Intellimouse Explorer 鼠标一样。这一代产品是光学成像引擎的第一代产品,这 一代的光电鼠标拥有一些现在已经众所周知的缺点,比如仅为 1500 次 /秒的刷新率和 400CPI的分辨率。对采样表面的适应性差,尤其对镜面以及花纹表面。 2001 年安捷伦推出了自己第二代光学成像引擎( A2030、 A2051),它在 CMOS 和 DSP引擎都没有重大变化的背景下,通过对光学引擎的重新设计将引擎的分辨率提升到 800DPI,同时将刷新率提升到 2000 2500 次 /秒。但是由于这一次的技术改良并没有增大 CMOS 的尺寸,所以较第一代光学引擎性能提升并不明显。 nts 3 2001 年微软推出的应用第二代 Intellieye 引擎的光学鼠标 2001 年底微软结束了与安捷伦的合作以后,独立推出了第二代 Intellieye 擎,与前一代相比它的改变极为重大 微软重新设计了 CMOS 和 DSP 算法,将新率提升到前所未有的6000 次 /秒,同时将 CMOS 尺寸提升到 22X22,同时一解决了光电鼠标的丢帧和表面适应性问题,同时把全部控制电路整合到同一块片上,大大提高了系统的整合度。不过第二代Intellieye 引擎光学部分并没重新设计,所以其分辨率仍为 400DPI。参见图。 2002 年罗技推出的双光头极光飞貂鼠标 2002 年初罗技推出了光电 鼠标历史上独一无二的双光头极光飞貂鼠标(如图 1-7)来与IE3.0 竞争,它使用了和安捷伦引擎所不同的 IAS 芯片和两个第二代的安捷伦 DSP 处理器,通过将两个 SPI 芯片交替运行来获得更高的处理速度,尽管 CMOS 的面积没有变化,但由于两个光头在不同的位置上采样,所以表面的适应性要比同期罗技单光头的鼠标来得好些。 2002 年罗技推出的应用 MX 光学引擎的鼠标 2002 年下半年,罗技推出了和安捷伦合作一年的成果 新一代 MX 光学引擎,新的光学引擎在保留 800DPI 的前提下,将像素处理能力提升到 470 万像素 /秒,同时将 CMOS 尺寸加大到 30X30。这使得它在性能上超过了一切原有的光学引擎,成为历史上第一款成功的光学引擎。 nts 4 2003 年 9 月,微软推出了全新系列的鼠标产品。它们全部采用“ Tilt Wheel”滚轮,这种滚轮最大的特点是通过左右倾斜可以实现对水平方向移动的控制。 罗技公司于 2004 年 8 月宣布,推出 MX 系列的最新家族成员 MX1000 LaserCordless Optical Mouse,它拥有着超酷外形,无线的连接方式,出色的人体工程学设计,最重要的是采用了 20 倍于传统鼠标的激光定位技术,因此 MX1000 可以说 是一款革命性的鼠标产品,它一经推出就受到全球玩家的密切关注。 2005 年 9 月微软也正式发布了第三代 IntelliEye 光学引擎,被形象的称为 Laser 激光引擎。其主打产品暴雷鲨 6000 的分辨率,更达到了 1000dpi。总结上面的鼠标发展简史,不难发现两点: 首先,随着技术的快速革新,鼠标也同其它电子产品一样更新换代越来越快。从光电鼠标的出现,到主导市场仅用了短短的 4 年时间。看来不久的将来,我们只有在博物馆里面才能看到机械鼠标了。 其次从鼠标最初设计的初衷来看,光电鼠标的更新换代,到以微软的 IE 4 和罗技的 MX系列为代表的“上一代”光电鼠标上市,鼠标的设计已经基本具备一款完美鼠标所应该具备的绝大部分特征。新一代鼠标的研发进入一个“休整期”。然而人类无休止的追求是科技发展的原动力。业界对精品的追求引导包括罗技在内的厂商在提高产品质量和性价比上投入研究的人力和物力。无线激光鼠标测试系统的研究自然成为题中应有之意。 1.2 本题研究的主要内容 光电 鼠标 器是通过检测鼠标器的位移,将位移信号 转换为电 脉冲 信号,再通过程序的处理和转换来控制屏幕上的光标箭头的移动。光电鼠标用光电传感器代替了滚球。这类传感器需要特制的、带有条纹或点状图案的垫板配合使用。 光电鼠标由光断续器来判断信号,最显著特点就是需要使用一块特殊的反光板作为MOUSE 移动时的垫。这块垫的主要特点是其中那微细的一黑一白相间的点。原因是在光电MOUSE的底部,有一个发光的二极管和两个相互垂直的光敏管, 当发光的二极管照射到白点与黑点时,会产生折射和不折射两种状态,而光敏管都这两种状态进行处理后便会产生相应的信号。从而使电脑作出反应,一旦离开那块垫,那光电鼠标就不能使用了。 光电鼠标 集现代高分辨率成像技术和数字图像处理技术于一体,是鼠标技术的重大发明,以其独特的技术和价格优势迅速成为计算机的标准配置。 本课题主要研究相对问题,提出在其他技术上的应用。 1 熟悉光电鼠标的工作原理 nts 5 2 分析光电传感器的工作原理 3 分析光电传感器在智能玩具车车上的应用。分析硬件电路设计及其软件设计。 nts 6 第二章 光学鼠标工作原理简介 2.1 传统光学鼠标的工作原理 随着信息技术迅猛发展 ,计算机的更新换代越来越快 ,一些“不起眼”的计算机外设也得到了很好的发展 ,如现在很热的光电鼠标就是一个很好的例子 ,它的核心是一个光电式传感器 , 光电式传感器是以光电器件作为转换元件的传感器 ,它可以用于检测能转换成光电变化的其它非电量 ,如零件直径 ,表面粗糙度 ,应变力 ,位移 ,振动 ,速度 ,加速度 ,以及物体的形状 ,工作状态的识别等 ,也可用于 检测直接引起光电变化的非电量 ,如光强 ,光照度 ,辐射测温 ,气体成分分析等。光电式传感器具有非接触响应快 ,性能可靠等特点 (当然用它做成的光电鼠标也具有这些特点 )。 2.1.1 光电传感器的组成 光源 -(光量 )-光通路 -(光量 )-光电元件 -(电量 )-测量电路 -电量输出 光电鼠标通常由以下部分组成:光学 传感 器、光学透镜、发光二极管、接口微处理器、轻触式按键、滚轮、连线、 PS/2或 USB接口、外壳等。 早期的光电鼠标需要一块专门的鼠标垫来作为光学定位的依据, 光电鼠标 所配 的底板是一个配有反射面及栅格线的特殊垫片。栅格线由黑线和蓝线组成 ,鼠标的底部有两个发光二极管 ,一个发出能被蓝线吸收的红外光 ,另一个发出能被黑线的红外光 ,而鼠标底部的一组光电管负责接受反射回来的光线。这样的光电鼠标就是利用鼠标发出的两组光线照射底板的 X,Y 轴线条反射回来的亮与暗来判断方向与距离。 可以看的出来 ,早期的光电鼠标确实比机械式鼠标有所提高,但其使用非常不方便,特别是当底板磨损或丢失后,鼠标就无法使用了, 这极大限制了 这种 光电鼠标的推广和普及 ,故此类光电鼠标在市场已经被淘汰了。 现在,技术 上的突破已经让光电鼠标彻底摆脱了专用鼠标垫的限制。新的光电鼠标采用激光直接定位的,在鼠标底部有一个微型光学定位系统,其中的一个高亮度发光二极管以最少每秒 1500 次(目前最快的鼠标的扫描速度达到 8000 次 /s)以上的速度向外发出光束,遇到物体反射回来,经过定位系统中的棱镜和透镜的多次反射, COMS 感光头接受了这些反射光线,经过鼠标内部的 DSP 芯片处理,从而得出鼠标的移动速度和移动方向,最后鼠标的动作就反映在屏幕上。这个系统地与原来的光电鼠标不同之处在于,定位系统的光线在任何介质上都可以得到反射,即使是在凹凸不 平的环境上依然能够清晰准确的定位,这样,新nts 7 型光电鼠标的应用范围就扩大了许多,配合光电鼠标一向定位准确,精度高, 移动流畅且不易脏污等优点。并且,随着光电鼠标价格的不断下跌,取代机械式鼠标而成为市场主流的趋势已不可阻挡 ,而 只是一个时间问题而已 。 其实, 光电鼠标与机械式鼠标最大的不同之处在于其定位方式不同。 鼠标内使用了一个高精密的光学传感器( Optical Sensor),也就是俗称的 光眼 。 通过该发光二极管发出的光线,照亮光电鼠标底部表面 (这就是为什么鼠标底部总会发光的原因 )。然后将光电鼠标底部表面反射回 的一部分光线,经过一组光学透镜,传输到一个光感应器件 (微成像器 )内成像。这样,当光电鼠标移动时,其移动轨迹便会被记录为一组高速拍摄的连贯图像。最后利用光电鼠标内部的一块专用图像分析芯片 (DSP,即数字微处理器 )对移动轨迹上摄取的一系列图像进行分析处理,通过对这些图像上特征点位置的变化进行分析,来判断鼠标的移动方向和移动距离,从而完成光标的定位。 所以,光电鼠标的光学传感器象一部 DC/DV一样,跟随操作者的移动连续记录它途经表面的“快照”(假想一下间谍卫星拍摄地球表面的情形,不过比喻不是很恰当,比如光电鼠标是 自带光源的,并且它的移动是没有规律的等等,或者象地形匹配制导的巡航导弹什么的吧),这些快照(即帧)是有一定的频率(即扫描频率、刷新率、帧速率等,以下我们对此不加区分)和尺寸及分辨率(即光学传感器的 CMOS晶阵有效像素数),并且光学传感器的透镜应具备一定的放大作用;而光电鼠标的核心 DSP通过对比这些快照之间的差异从而识别移动的方向和位移量,并将这些确定的信息加以封装后通过 USB 接口源源不断地进入PC;而驱动程序(可以是 Windows的默认驱动)则根据这些信号经过一定的转换(参照关系由驱动设置)最终决定鼠 标指针在屏幕上的位置。 由此,我们可知一个大略的“(鼠标移动)表面 镜头(组) 光学传感器 CMOS晶阵 DSP USB接口 驱动程序 PC屏幕坐标”的过程了。 排除 DSP的处理能力的限制,刷新率反映了光学传感器的快速捕捉能力,这个能力越强,获得的信息量就越大,光电鼠标的反应就越快 速和准确,若刷新率不足(如早期的 1500次 /秒或者 2000次 /秒等)则在快速移动的情况下会出现“丢帧”现象从而导致失灵。然而,从前述提到的过程来看,刷新率仅仅反应了捕捉nts 8 能力的一个侧面,即时间层面上的捕捉能力,而总体上的 捕捉能力同时应包括空间层面上的捕捉能力即光学引擎必须在提供足够细节的情况下保证图像的连续性,由图像本身的特性(面积、分辨率)及其刷新率(帧速率)共同保证: A.图像要有足够大的面积:抓取足够大的移动表面的图像以进行比较; B.图像要有足够多的细节(即分辨率):缺乏细节的图像恐怕也难以比较; C.图像要有足够快的帧速率:保证在快速移动时图像仍然连续。 其中条件 A 和 C 之间有较强的互补关系,是保障图像连贯的基本条件;而条件 B 亦能对 A和 C进行一定程度的补偿,可提高图像的精度和丰富其细节,但并不能取代面积或刷新率的作用。因此,反映图像处理能力“像素 /秒”较之刷新率更为科学合理,而最大速度、加速度则是由此衍生的指标。 2.1.2 光电鼠标各部件原理 下面我们来逐一分析一下光电鼠标的各个部件。 首先我们就来看一下光电鼠标的核心 光学传感器 光学感应器是光电鼠标的核心 , 目前能够生产光学感应器的厂家只有安捷伦、微软和罗技三家公司。 如图: 光学 传感 器主要由 CMOS感光块(低档摄像头上采用的感光元件)和 DSP组成。 CMOS感光块负责采集、接收由鼠标底部光学透镜传递过来的光线(并同步成像),然后 CMOS 感光块会将一帧 帧生成的图像交由其内部的 DSP进行运算和比较,通过图像的比较,便可实现鼠标所在位置的定位工作。 如图: nts 9 下图是 光学感应器的背面,从图中我们可以看到,芯片上有一个小孔,这个小孔用来接收由鼠部底部的光学透镜传送过来的图像 。 下图是 光电鼠标的控制芯片 : 控制芯片负责协调光电鼠标中各元器件的工作,并与外部电路进行沟通(桥接)及各种信号的传送和收取。我们可以将其理解成是光电鼠标中的 “ 管家婆 ” 。 这里有一个非常重要的概念大家应该知道,就是 dpi对鼠标定位的影响。 dpi是它用来衡量鼠标每移动一英寸所能检测出的点数, dpi越小,用来定位的点数就越少,定位精度就低; dpi越大,用来定位点数就多,定位精度就高。通常情况下,传统机械式鼠标的扫描精度都在 200dpi以下,而光电鼠标则能达到 400甚至 800dpi,这就是为什么光电鼠标在定位精度上能够轻松超过机械式鼠标的主要原因 。 下面我们来介绍一下 光学透镜组件 : 光学透镜组件被放在光电鼠标的底部位置,从 下图中可以清楚地看到,光学透镜组件由一个棱光镜和一个圆形透镜组成。 其中,棱光镜负责将发光二极管发出的光线传送至鼠标的底部,并予以照亮。 圆形透镜则相当于一台摄像机的镜头,这个镜头负责将已经被照亮的鼠标底部图像传送至光学感应器底部的小孔中。通过观看光电鼠标的背面外壳,我们可以看出圆形透镜很像一个摄像头!不管是阻断棱光镜还是圆形透镜的光路,均会立即导致光电鼠标 “ 失明 ” 。其结果就是光电鼠标无法进行定位,由此可见光学透镜组件的重要性。 nts 10 下面是光电鼠标的另一个重要部件是发光二极光: 光学 传感 器要对缺少光线的鼠标底部进行连续的 “ 摄像 ” ,自然少不了 “ 摄影灯 ” 的支援。否则,从 鼠标底部摄到的图像将是一片黑暗,黑暗的图像无法进行比较,当然更无法进行光学定位了。 通常,光电鼠标采用的发光二极管(如图 7)是红色的(也有部分是蓝色的),且是高亮的(为了获得足够的光照度)。发光二极管发出的红色光线,一部分通过鼠标底部的光学透镜(即其中的棱镜)来照亮鼠标底部;另一部分则直接传到了光学感应器的正面。 用一句话概括来说,发光二极管的作用就是产生光电鼠标工作时所需要的光源。 以上我们对光电鼠标的各个部件原理做了介绍,可见,光电鼠标确实比机械鼠标 有很大的优越性,其取代 机械鼠标以成必然。随着 其价格的不断下降,它必将走进千家万户。 传统光学鼠标的工作原理 : nts 11 如图所示,光学鼠标主要由四部分的核心组件构成,分别是发光二极管、透镜组件、光学引擎( Optical Engine)以及控制芯片组成。 光学鼠标通过底部的 LED 灯,灯光以 30 度角射向桌面,照射出粗糙的表面所产生的阴影,然后再通过平面的折射透过另外一块透镜反馈到传感器上。如图 1-11 所示,当鼠标移动的时候,成像传感器录得连续的图案,然后通过“数字信号处理器” (DSP)对每张图片的前后对比分析处理,以判断鼠标移动的方向以及位移,从而得出鼠标 x,y 方向的移动数值。再通过 SPI 传给鼠标的微型控制单元( Micro Controller Unit)。鼠标的处理器对这些数值处理之后,传给电脑主机。传统的光电鼠标采样频率约为 3000 Frames/sec(帧 /秒),也就是说它在一秒钟内只能采集和处理 3000 张图像。 根据光学鼠标工作原理,我们可以了解到影响鼠标性能的主要因素。在开发测试系统的时候,这些因素就是我的主要测试对象。具体说就是: 第一, 成像传感器。成像的质量高低,直接影响下面的数据的进一步加工处理。 第二, DSP 处理器。 DSP 处理器输出的 x, y 轴数据流影响 鼠标的移动和定位性能。 第三, SPI与 MCU之间的配合。数据的传输具有一定的时间周期性(称为数据回报率),而且它们之间的周期也有所不同, SPI 主要有四种工作模式,另外鼠标采用不同的 MCU,与电脑之间的传输频率也会有所不同,例如 125MHZ、 8 毫秒;500MHz, 2 毫秒,我们可以简单的认为 MCU 可以每 8 毫秒向电脑发送一次数据,目前已经有三家厂商(罗技、 Razer、 Laview)使用了 2 毫秒的 MCU,全速 USB 设计,因此数据从 SPI 传送到 MCU,以及从 MCU 传输到主机电脑,传输时间上的 配合尤为重要。 nts 12 所谓全速 USB 技术是指 USB Full Speed,相对于传统的 Low Speed 的每秒 1.5Mb 传输速度,它的传输速率为可达 12Mb 每秒。因为两者都以 6500fps 为原始数据,游戏过程中发生的大量的鼠标移动,传统鼠标所使用 1.5Mb/s 的 LowSpeed USB 接口在特定的环境下有可能成为数据流的瓶颈。因此有必要将接口的全速速度提升到 Full Speed,使鼠标的实际移动反映到屏幕光标时更加实时。 2.2 光学引擎的工作原理 1.光学引擎的功能 光学引擎是光电鼠中最为精密的部件。它是一套扫描分析系统,会不断发出脉冲光 波扫描鼠标底部的平面,得到一张张图片进行分析后确定鼠标的运动方向和轨迹。光学引擎主要是由 CMOS 图像感应器和 DSP 数字信号处理器两大部分组成。前者负责收集鼠标底部平面的信息,并且将所有信息转化为二进制数据。后者对这些数据进行比较,由此来计算出鼠标的运动轨迹。我们平时最为关心的光电鼠标性能参数如分辨率、采样频率等都是由光学引擎所决定的。 2.光学引擎的指标计算方法 光学引擎能影响鼠标三个指标:分辨率、采样频率和图像处理能力:光电鼠分辩率的单位是 dpi(dot per inch),即鼠标移动每英寸的采样点数。光 电鼠标在工作的时候会不断产生光电脉冲,每秒产生的脉冲越多鼠标也就越灵敏。目前主流光学鼠标的分辨率为400/800/1000dpi。采样频率指图像感应器每秒采集分析的能力。度量单位是帧 /每秒。早期的光学引擎采样率仅有 1500 帧 /秒,每秒只能解析 1500 次。仅相当于 14 英寸 /秒的运动速度,而人类手臂的运动速度能达 30 英寸 /秒,在 CS 类射击游戏中低采样率的鼠标非常不爽。nts 13 此后光学引擎的技术不断发展,采样率已达到 6000 帧以上。 图像处理能力是分辨率与感应器的乘积,它反映了 DSP 数字信号处理器的计算能力。一般光电鼠标 的感应器为 22 22 484 象素。当鼠标的采样率为 1500 帧的时候,光学引擎的图像处理能力为 484 1500 72.6 万个像素。 nts 14 第三章 光电 传感器工作原理 3.1 光电传感器的组成 光电传感器是通过把光强度的变化转换成电信号的变化来实现控制的。 光电传感器在一般情况下,有三部分构成,它们分为:发送器、接收器和检测电路。 3.2 光电传感器各部件工作原理 发送器对准目标发射光束,发射的光束一般来源于半导体光源,发光二极管 (LED)、激光二极管及红外发射二极管。光束不间断地发射,或者改变脉冲宽度。接收器有 光电二极管、光电三极管、光电池组成。在接收器的前面,装有光学元件如透镜和光圈等。在其后面是检测电路,它能滤出有效信号和应用该信号。 此外,光电开关的结构元件中还有发射板和光导纤维。 三角反射板是结构牢固的发射装置。它由很小的三角锥体反射材料组成,能够使光束准确地从反射板中返回,具有实用意义。它可以在与光轴 0 到 25 的范围改变发射角,使光束几乎是从一根发射线,经过反射后,还是从这根反射线返回。 分类和工作方式 槽型光电传感器 把一个光发射器和一个接收器面对面地装在一个槽的两侧的是槽形光电。发光器能发出红外光 或可见光,在无阻情况下光接收器能收到光。但当被检测物体从槽中通过时,光被遮挡,光电开关便动作。输出一个开关控制信号,切断或接通负载电流,从而完成一次控制动作。槽形开关的检测距离因为受整体结构的限制一般只有几厘米。 对射型光电传感器 若把发光器和收光器分离开,就可使检测距离加大。由一个发光器和一个收光器组成的nts 15 光电开关就称为对射分离式光电开关,简称对射式光电开关。它的检测距离可达几米乃至几十米。使用时把发光器和收光器分别装在检测物通过路径的两侧,检测物通过时阻挡光路,收光器就动作输出一个开关控制信号。 反光 板型光电开关 把发光器和收光器装入同一个装置内,在它的前方装一块反光板,利用反射原理完成光电控制作用的称为反光板反射式 (或反射镜反射式 )光电开关。正常情况下,发光器发出的光被反光板反射回来被收光器收到;一旦光路被检测物挡住,收光器收不到光时,光电开关就动作,输出一个开关控制信号。 扩散反射型光电开关 它的检测头里也装有一个发光器和一个收光器,但前方没有反光板。正常情况下发光器发出的光收光器是找不到的。当检测物通过时挡住了光,并把光部分反射回来,收光器就收到光信号,输出一个开关信号。nts 16 第四章 光电传感器在 玩 具 小车中的应用 4.1 应用背景 智能机器人在当今社会的应用越来越广泛。从普通的玩具机器人到工业控制机器人,从能够炒菜的机器人到可以进行太空探测的机器人,可以预见今后智能机器人的应用将更加广泛。普通的无线遥控车大家都很熟悉,任天堂的电玩 WII 大家也都觉得很神奇。熟悉的不好玩,神奇的又玩不起,可能是很多人遇到的共同问题。本设计从全新的思维角度出发,制作一个日常生活可以玩的智能小车 。 4.2 系统总体设计 智能小车系统原理是,将三维坐标传感器安装在小车上,小车即具有智能感知功能,就会随着目标物的前后左右移动而 跟着移动。系统主要有 3 个组件:一为三维坐标光感传感器 ( ETOMS-ET21X111) ,用于采集目标物的移动坐标,该传感器使用非常简单;二为 MCU ( EMC-EM78P156),读取传感器数据控制马达转动, EM78P156 是市面上常见的 MCU,使用简单,价格便宜;三是马达,马达选用普通直流马达即可,采用 PWM 控制。 系统整体框 如图所示: 系统整体框架 该设计的整体功能简单概括起来就是:让小车能够跟着人(或是目标物)走。分开来讲需要实现以下 3 个小功能:传感器能够正确读取 X、 Y、 Z 的坐标值,这是首要 条件。 MCU 能够正确判断 X、 Z 坐标值的大小变化,这是关键。可能有人会有疑问,为什么不判断 Y 坐 标变化呢?那是因为小车不能上下跳跃(上下方为 Y 轴)。 MCU 根据坐标值的大小变化控 制马达转向及马达 PWM 的时间,这是结果。 4.3 硬件系统设计 4.3.1 传感器周边电路设计 ETOMS-ET21X111 是一款高性能具有 X、 Y、 Z 坐标资料输出功能的光感传感器。具nts 17 有如下特点: 高速资料输出,每秒钟输出坐标资料高达 75frame;低电压工作,电压范围 2.7 3.5V; 采用标准 RS232 串行资料输出 格式输出坐标值;使用外部晶振,范围 0.5 12MHz,通常采 用 3.58MHz;具有可控制曝光接口 EO4 EO7。 EO4 EO7 这四个接口是用于曝光控制的,既可以用软件进行控制,也可以用硬件的方式进 行控制。根据自己的需要选择合适的即可。本设计采用硬件的方式将这四个接口全部置为高电平。 传感器周边详细的接口电路如图 2 所示,从图 2 中可知 EO4 EO7 为高,这是曝光设置为硬件拉高,也可以在软件中设置。 IC 正常工作时,坐标数据由 RS232 端口输出。注意图 2中的 4 个 LED 为红外 LED。 IC 工作电压 是 3.3V,系统采用 5V 供电。 IC 采用 3.58MHz 外 接晶振,上电自动复位后即可正常工作。 传感器接口电路 4.3.2 MCU 接口电路设计 MCU 周边控制电路详细设计如图所示。图 3 中 L、 L+控制左边路马达 PWM, R、 R+控制右路马达 PWM。 RS232 接收传感器坐标数据输入。 IC 工作于 3.3V 电压,上电后自动复位。系统时钟采用 4MHz 外接晶振。 nts 18 MCU 接口电路 4.3.3左路马达控制电路 左路马达控制电路如图 4 所示。右路马达控制电路同左路的一样,图中 Q3、 Q4 采用 PNP 管, L 和 L+不可同时为 LOW,以免造成短路。 左路马达控制电路 如下所示: 左路马达控制电路 4.4 软件系统设计 4.4.1 主程序流程图 nts 19 系统上电后,首先进行初始化,对 EMC78P156 的寄存器进行设置,使能中断标志寄存器,等待中断。图是主程序流程图。 中断产生时进入中断处理子程序,首先要关闭中断标志且保护好现场,然后读取并解析XYZ坐标值,分成以下几种情况。 ( 1)判断 X 轴变化,如果 X 值在大于 14 小于等于 17 时,马达不左右转动,然后再判断 Z 轴坐标值的变化,如果 Z 值也在大于 14 小于 等于 17 时,马达不前后转动。 ( 2)如果 X 轴坐标值大于 17,判断 Z 轴坐标,若 Z 值大于 17,则反转右马达,之后左右马达后转;若 Z 值小于 14,则正转左马达,之后左右马达前转;否则马达不转动。 ( 3)如果 X 轴坐标值小于 14,判断 Z 轴坐标,若 Z 值大于 17,则反转左马达,之后左右马达后转;若 Z 值小于 14,则正转右马达,之后左右马达前转;否则马达不转动。中断处理子程序的流程如图所示。 4.4.2 中断处理流程 nts 20 中断处理子程序流程 4.5 其他设计注意 1 传感器的设计技巧 ET21X111 对红外线的光谱响应最好,但自然光中含有大量的红外线,所以强烈的自然光会影响传感器的数据,导致输出的坐标与实际坐标有较大的偏差,解决方法是加滤光片,但这也只能起到衰减作用,具体应用视情况而定。 2 马达控制电路设计技巧 设计控制马达正反转的电路时要注意:因 MCU 在上电的时候, I/O 的状态是不确定的,nts 21 所以程序在一开始就要将 Q3、 Q4 的两个 I/O 设成 HI( Q3、 Q4 为 PNP 管,如果为 NPN 管则 I/O 设成 LOW),以防止在上电的时候两个 I/O 都为 LOW,使 Q3、 Q4 导通形成短路。另外需要注意 的是在同一时间 Q3、 Q4 只能有一个是导通的。 3 MCU 设计技巧 在电刷直流马达启动或转动的时候,会产生很大的电源毛刺。这对 MCU 的工作非常不利,所以加入此 LC 型滤波电路,如图所示。 滤波电路 4 程序设计技巧 智能小车在运行的过程中,需要一边读取传感器传过来的坐标数据,一边控制马达的 PWM 输出。传感器会每 12ms 输出一次坐标资料,所以最好的方式是采用中断来读传感器资料, 而在没有资料输出的时间做 PWM 输出的动作。 nts 22 总结 本设计的主要内容: 1、 分析光电鼠标的工作原理。讨论了光电鼠标 俞普通鼠标的不同点。 2、 分析了光电传感器工作原理。 3、 讨论了光电传感器在玩具小车中的应用。 nts 23 参考文献 1基于光电传感器的小车控制 西南科技大学信息与控制工程学院 2基于光学传感器的智能玩具小车设计 3Logitech TDE2 DB,Joao Ventura,Measuring position of spotimage on sensor,2003-09-12 4Logitech TDE2 DB,Joao Ventura,Ttracking FT:Test Limits,2004-05-17 5Logitech TDE2 DB,Joao Ventura,6020 Spot Analysis,2004-04-02 7光电鼠标技术在汽车上的应用 .胡新国 .技术与研究 8 微型计算机系统原理及应用,周德明,清华大学出版社 9 软件技术基础,黄迪明,电子科技大学出版社 10自动控制原理,鄢景华,哈尔滨工业大学出版社 nts 24 致谢: 在本文完成之际,我由衷地感谢关怀、教诲、帮助、支持和鼓励我完成学业的老师、朋友和亲人。 首先我要感谢我的导师 XXX,半年来他在学习、科研上一直对我悉 心指导,严格要求、热情鼓励,为我创造了很多锻炼提高的机会。吴老师洞察全局、高屋建瓴,为我的论文的顺利完成指出了很好的方向,吴老师渊博的知识、宽广无私的胸怀、夜以继日的工作态度、对事业的执著追求、诲人不倦的教师风范和对问题的敏锐观察力,都将使我毕生受益。 在此我谨向敬爱的倒是致以最诚挚的谢意! nts光电鼠标技术与应用一、本课题所涉及的问题在国内(外)的研究现状综述鼠标自从诞生到今天,已经有38个年头了,这38年来,鼠标无论在性能还是工作原理上都有了许多变化。“mouse”换代发展反映了计算机技术的普及和应用电子技术的突飞猛进。同时也证明了一个结论:原创+科技进步=产品的生命。曾经获得计算机界最权威的“图灵奖”的道格拉斯?恩格尔巴特(Douglas Englebart)博士于1968年12月9日在IEEE会议上展示了世界上第一个鼠标。如图所示:一个木质的小盒子,盒子下面有两个互相垂直的轮子,每个轮子带动一个机械变阻器获得X、Y轴上的位移,在盒子的上面则有一个按钮开关提供连通信号。鼠标的这款鼻祖与今天的鼠标结构大不相同,甚至还需要外置电源给他供电才能正常工作。然而他却引领了一个科技领域的几次革命,带给计算机工作者一次次的欢欣鼓舞。图 第一个mouse1983年苹果公司受到仙童公司著名STAR计算机的启发,在当年推出的Iisa电脑上第一次使用了鼠标作为GUI(Graphical user interface)界面操作工具。这款电脑虽然不成功,但它为转年推出的Macintosh以及MACOS操作系统提供了经验,鼠标的黄金年代来临了。这个时候的鼠标还是老式的机械式鼠标,但是对于最初的产品已经有了新的改良,鼠标球取代了不灵活的单滚球,单键设计被更加灵活的双键/三键所取代,可供电的标准RS232串行口设计取代了早期的独立接口,现代鼠标的基本结构已经成型。1982年罗技公司发明的世界第一款光机鼠标,光机结构是鼠标发展史上最大的发明。也就是这个时候现在鼠标的结构设计基本成熟,光机鼠标统治了鼠标市场达18年之久。1984年罗技的第一款无线鼠标研制成功,那时候还依靠红外线作为信号的载体。虽然说这款产品由于性能方面的诸多问题而告失败,但是罗技在无线方面的创新也给后来的产品带来了发展的潜能。1996年由微软发明的鼠标滚轮是鼠标发展史上十分重大的发明,今天滚轮已经成为鼠标的标配之一。现在流行的滚轮设计一般包括两种,一是机械式滚轮,也就是用滚轮来带动一个机械电位器以获得信息,微软的很多鼠标都是采用这种结构。它的优点就是滚动比较精准,但是机械结构存在磨损问题。另一种滚轮就是光电式滚轮,罗技等大多数厂商都是采用这种设计。它的滚轮内部就是一个栅轮。在栅轮的两侧分别有一个发光二级管和光敏二级管,工作原理上和光机鼠标获得滚动信息的方式是一样的。这种滚轮的寿命比较长而且手感很干脆,但是在滚动信息的精确性上却不如上面的机械式滚轮。图 微软的机械式滚轮鼠标1999年微软与安捷伦公司合作,推出了Intellimouse Explorer鼠标,揭开了光学成像鼠标的时代的序幕。其中Intellieye定位引擎是世界上第一个光学成像式鼠标引擎,它的高适应能力和不需清洁的特点成为当时最为轰动的鼠标产品,被多个科学评选评为1999年最杰出的科技产品之一。图 2000年罗技推出的光电鼠标2000年,罗技公司也推出了同类的光电鼠标产品,使用安捷伦H2000光学成像引擎,性能上和Intellimouse Explorer鼠标一样。这一代产品是光学成像引擎的第一代产品,这一代的光电鼠标拥有一些现在已经众所周知的缺点,比如仅为1500次/秒的刷新率和400CPI的分辨率。对采样表面的适应性差,尤其对镜面以及花纹表面。2001年安捷伦推出了自己第二代光学成像引擎(A2030、A2051),它在CMOS和DSP引擎都没有重大变化的背景下,通过对光学引擎的重新设计将引擎的分辨率提升到800DPI,同时将刷新率提升到20002500次/秒。但是由于这一次的技术改良并没有增大CMOS的尺寸,所以较第一代光学引擎性能提升并不明显。图 2001年微软推出的应用第二代Intellieye引擎的光学鼠标2001年底微软结束了与安捷伦的合作以后,独立推出了第二代Intellieye擎,与前一代相比它的改变极为重大微软重新设计了CMOS和DSP算法,将新率提升到前所未有的6000次/秒,同时将CMOS尺寸提升到22X22,同时一解决了光电鼠标的丢帧和表面适应性问题,同时把全部控
- 温馨提示:
1: 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
2: 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
3.本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。

人人文库网所有资源均是用户自行上传分享,仅供网友学习交流,未经上传用户书面授权,请勿作他用。