- 易迪拓培训,专注于微波、射频、天线设计工程师的培养
基于红外线的转速测量仪设计
引言
本文以传统的电磁式系统为基础,研制一种使用红外辐射技术的新型转速测量仪,安装方便,对周围环境要求不高,可以很容易地完成转速的测量。具有较宽的动态测量范围,测量精度较高。
2 系统设计
测速系统总体结构如图1所示,主要包括红外测速传感器(由红外发射与接收电路和齿盘组成)、信号处理电路、单片机以及数字显示部分。其工作过程如下:当齿盘旋转时,由于轮齿的遮挡,红外发射管与接收管之间的红外线光路时断时续,信号处理电路将此变化的光信号转换为电脉冲信号,一个脉冲信号即表示齿盘转过一个齿。单片机对脉冲进行计数,同时通过其内部的计时器对接收一定数目的脉冲计时,根据脉冲数目及所用时间就可计算出齿盘的转速,最后通过数字显示部分将转速显示出来。
2.1 系统硬件设计
根据红外测速的原理,系统的电路设计如图2所示。
本系统采用AT89C52单片机,它是美国ATMEL公司生产的低电压,高性能CMOS8位单片机,片内含8KB的可反复擦写的Flash程序存储器和256B的随机数据存储器(RAM),器件采用ATMEL公司的高密度、非易失性存储技术生产,与标准MS-51指令系统及8052产品引脚兼容,片内置有8位中央处理器(CPU)。功能强大的AT89C52单片机适用于许多较为复杂的控制应用场合。
电路中选用红外光敏二极管作为受光器件,它与红外发光二极管一起组成一对红外发射接收管,红外光敏二极管在电路中处于反向工作状态。没有光照射时,光敏二极管处于截止状态,反向电阻很大,反向电流(暗电流)很小。随着光照的增强,光敏二极管处于导通状态,其反向电阻减小,反向电流(光电流)增大,其光电流与照度之间呈线性关系。
转速显示选用字符型液晶显示模块(LCM)JHD12864,可显示16×8或16×16点阵字符。其主控制驱动电路为HD44780,具有标准的接口特性,适配M6800系列和MCS-51系列MCU的操作时序;模块内部具有64个字节的自定义字符RAM,可自定义显示字符。该模块采用+5V电源供电,共有20个引脚,其与单片机的接口路如图2所示,其中可变电阻RW2用来调节显示器的对比度。
3.2系统软件设计
3.2.1计时方案的选择
根据计时方案的不同,目前数字式转速测量装置的计时方法主要有M 法、T法和同步M/T法。M 法测速是在相等的时间间隔△t内读取脉冲数M,由M/△t计算出转速,速度越高在△t时间内计得的M 就越多,由±1个计数脉冲误差所引起的转速测量误差就越小,故该法适用于高速。T法测速是根据相邻两个脉冲时间间隔对应的时钟脉冲计数值m 来计算转速的,转速越慢或每转脉冲数越多,其计数值m就越多,计数器±l个计数脉冲所引起的误差就越小,故该法适用于低速。上述两种方法测量的绝对误差反比于速度采样时间T(Hp:时间间隔△t或计数值m),因此在稳态测量和实时性要求不高的场合,可取较大的T 以保证足够的测量精度。但在动态测量和实时控制系统中,往往对转速测量的实时性有较高的要求。因此,采样时间T不能随意取大,为了解决既要周期小,又要测速精度高的矛盾,可采用同步M/T法。这种方法的特点是不固定定时时间△t′,以记录到完整的盘脉冲为准,主要是设法使M 与△t′同步,从整数个盘脉冲开始计时,同样在整数个盘脉冲结束计时,记录到的是整数个盘脉冲,且与计时是“同步” 的。其原理如图3所示,在采样时间△t时间内实际计时时间△t′开始于第一盘脉冲的下降沿,终止于最后一个脉冲的下降沿,因而得到整数个盘脉冲,消除了M 法和T法中±1个脉冲引入的误差。鉴于几种方法的比较,在设计中采用同步M/T法设计本测速系统。
[p] 3.2.2 软件结构划分
采用结构化软件设计的方法,使得设计简单,易于调试和移植,提高编程效率。采用结构化设计软件的方法将本系统软件划分为图4所示的4个模块:齿数计数模块、计时模块、转速计算模块和转速显示模块。其中最主要的是计时模块和转速计算模块
(1) 计时模块
由图2可知当红外线发射管发射的红外线未被轮齿挡住时,接收管受红外线照射呈导通状态,经反相器输入到单片机中断端口的电压为高电平,不产生中断;而当红外线发射管发射的红外线被轮齿挡住时,接收管不受红外线照射则呈截止状态,经反相器输入到单片机中断端口的电压跳变为低电平。从而激活中断程序对脉冲进行计数。计数流程图如图5所示。由于计数需要与计时同步,所以需要在产生第一次红外光被挡住时(红外光被挡住时Pass=0,反之Pass=1),也即中断口电位由高变低时打开定时器。由于实验中的齿盘共有108个齿,为了提高测量的实时性,把108个齿分成9等份,当计数值(Num)为12时关闭定时器并读取定时器的计时值。
(2) 转速计算模块
由于系统采用同步M/T法测量转速,所以计算转速时,需要的参数有盘脉冲数和计时值。本系统中AT89C52单片机采用频率为12MHz的外接晶振,则每个机器周期为1us。单片机定时器的计数脉冲周期为一个机器周期,若定时器从零开时计数,关闭定时器时其计数值为m,则计时时间就是m微秒。计算转速部分程序如下。
m=TH0×256 //读出计数器的计数变量TH0,并将其左移8位
m=TH0+TL0 //获得时钟脉冲数
time=m //计算出计时时间
n=60*106/(9*time) //计算转速r/min
5 结束语
本文作者的创新点是以红外传感器代替了传统的电磁式传感器,系统的硬件电路简单,测量转速范围较宽,且具有较高的测量精度,对于低转速的测量也有相当高的精度。并充分利用了单片机的内部资源,有很高的性价比。可用于各行业转速的非接触式检测和控制中。
上一篇:面向非射频测试工程师的射频测量基础
下一篇:无线通信系统频率干扰及其解决方案