传感器为微处理系统提感测周围环境条件提供了一个窗口,光传感器及磁性传感器在测定物体的出现、离开和运动等领域应用广泛。本文介绍光传感器和磁性传感器的基本类型、应用及其与微处理器的接口问题。
槽式光传感器开关,将一个发光二极管(led)置于正对光电晶体管的塑料座中,发光二极管与光电晶体管之间有一个缝隙。如果物体穿过这个缝隙,它将阻断led和光电晶体管之间的光路。槽式开关通过在发动机轴上放置一个开槽的轮子来检测发动机速度。当轴旋转时,它交替地阻断光路。槽式开关也用于指示门或罩的开关或闭合。当门是闭合的时候,门上的标志会落入槽内并阻断光路。
反射传感器,其工作原理是相似的。反射传感器上的光电晶体管截取由开关前部任何地方反射来的光。大部分反射传感器都有焦距长度,即检测被放置物体的最佳距离,该距离通常在0.1和0.5寸之间。反射传感器通常通过着色或阳极处理使发动机轴变黑来检测发动机运动情况,然后将由反射材料制成的带状物置于轴上。由于轴在旋转,传感器就不能从轴的黑色部分收到反射,却能够从反射带上收到强烈反射。如图1c所示,槽式或反射光传感器具有相同的电路符。在系统设计时都要注意两类传感器具有共同特征。
电流传输率(ctr)
led和光电晶体管对的增益通常少于1。在给定led电流的情况下,光电晶体管集电极中产生的电流被称为电流传输率(ctr)。通常槽式开关的ctr是0.1,因此,led中10ma的电流会在集电极中产生1ma的电流。有时ctr以比率或表格形式描述集电极电流与led电流的关系。ctr取决于led和光电晶体管的特性,并因光传感器的不同而有很大不同。
当需要将光传感器与处理器接口时,电流传输率有几层含义。首先,如图2所示,如果将开关直接接口到数字输入端,晶体管输出值将会在有效逻辑电平之间摆动。要确保光电晶体管饱合,就要限定上拉电阻的值。例如,如果用10ma驱动led且ctr的最低值为0.1,则上拉电阻的值约为5kω。
电阻值越低,抗扰度越好,运行速度更快,但并不适用于所有的光传感器。晶体管必须吸收足够的电流以确保有效的逻辑低电平。如果想使用较小的上拉电阻,可采用具有较高ctr的光传感器开关或具有更大驱动电流的led。光传感器开关具有达林顿晶体开关输出形式,它通常具有比图1更高的ctr,但通常它们也只有单只晶体管输出速度的20%,且饱合电压较高。
反射传感器也可以采用ctr来评估。由于传感器取决于反射光,ctr取决于表面类型和反射表面与传感器之间的距离。反射传感器的ctr取决于标准反射表面,该表面被置于与传感器相距特定距离的焦点位置上。
反射传感器的ctr因器件和应用的不同而不同。如果传感器面对的是一个在灰色和黑色之间转换的表面,则ctr与生产厂家所采用的白色参考面测得的ctr就会不相同。设计必须适应由传感器应用所得出的实际ctr。确定ctr范围的一个方法是测量具体应用的ctr,然后采用相同传感器与由传感器生产厂家用白色参考面测得的ctr进行比较,这样将会得到所期望的ctr参考范围。
由于光传感器的ctr范围很大,可能须将传感器的输出端接口到模数转换器(adc),这样可采用软件来查找输出电平的变化,而非取决于产生数字逻辑电平的元件的能力。当然,这样做的代价就是增加一个adc并且需要更多的时间进行adc取样。
检测速度
任何光传感器中光电晶体管的速度相当慢,这一点限制了检测的最大速度。开关时间的典型值分别是8ms和50ms。如果传感器内的驱动led由软件控制,这一软件必须在读取传感器的输出时,对开启和关闭延迟予以考虑。
机械不稳定性
机械抖动会导致反射传感器异常。例如,通过观察扁平黑色发动机轴上的发光带,反射传感器可以测量旋转次数,这种传感器电流的输出产生的是中断信号。有时候,发光带恰好在传感器的检测区域时,发动机会停止。机器震动会引起处理器产生大量的中断信号,从而有效地关闭发动机。
可以设想一个与槽式传感器相似的情形,如果阻断光路的标志只是使光电晶管变得部分模糊,从而使光电晶体管运行不良,造成不确定的输出。因此硬件设计可以应用比较器电路的时滞原理,将这一问题很好地解决。
反射传感器则要做一些补充考虑。反射传感器常用于传感不同类型的物体表面。一个典型的例子就是高速分选机分选纸张。纸的质量、颜色和反射特性不同。传感系统必须被设计成能够处理各种材料。在发动机测速应用中,油膜覆盖了轴的扁平黑色元件,将会发生什么?对于检测旋转的传感器的功效有何影响?
在某些情况下,可能要增加硬件或软件(或两者兼有)来检测异常状况。在这个例子当中,当反射传感器产生过多中断信号时,软件会有一个记录中