微波EDA网,见证研发工程师的成长!
首页 > 测试测量 > 测试测量技术文库 > 一种基于红外线的转速测量仪研究及设计

一种基于红外线的转速测量仪研究及设计

时间:01-27 来源:互联网 点击:


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 结束语

本文作者的创新点是以红外传感器代替了传统的电磁式传感器,系统的硬件电路简单,测量转速范围较宽,且具有较高的测量精度,对于低转速的测量也有相当高的精度。并充分利用了单片机的内部资源,有很高的性价比。可用于各行业转速的非接触式检测和控制中。

Copyright © 2017-2020 微波EDA网 版权所有

网站地图

Top