李孺昕,王
林
(中国测试技术研究院,四川成都610021)
摘
要:针对传统采用的较为繁琐且不准确的物理方式检测电机转速的状况,将ATmega16单片机加入进行控制计
数,并辅以数码显示,使用光纤式光电开关的结构进行传感接收信号,再应用单片机采用测频法对光电开关输出脉冲信号的频率进行检则。本装置在降低测速器成本,提高测速稳定性及可靠性等方面有一定价值,而且可以达到一般工业测速的测量标准,具有广泛的前景。
关键词:ATmega16单片机;光纤式光电开关;信号;电机;转速中图分类号:TP368;TN253
文献标识码:A
文章编号:1672-4984(2008)06-0062-04
Optic fiber motor speed detection based on SCM ATmega16
LI Ru-xin ,WANG Lin
(National Institute of Measurement and Testing Technology ,Chengdu 610021,China )
Abstract :Specifically for improving the status that the electric motor rotation rate was determined by comparatively
fussy and inaccurate physics way in tradition ,the singlechip ATmega16was used to control counting and digital display was used.The structure of the fiber-optical photoelectric switch was used to the sensor signal receipt ,then the frequency of the output pulse signal of the photoelectric switch was determined with frequency measurement method and singlechip.The device has reduced the cost of the rate detector ,and has improved the measurement stability and reliability.It can used as the fast measurement standard for general industry ,thus it has broad prospect.
Key words :SCM ATmega16;Optic fiber photoelectric switch ;Signal ;Motor ;Rotation rate
收稿日期:2008-03-11;收到修改稿日期:2008-06-09作者简介:李孺昕(1985-),男,计量员,从事三表的检定工
作。
第34卷第6期2008年11月中国测试技术
CHINA MEASUREMENT &TESTING TECHNOLOGY Vol.34No.6Nov.2008
1引言
在传统生产行业中,经常遇到各种需要测量转速的场合,例如发动机、电动机、机床主轴等旋转设
备的运转和控制中,常需要分时或连续测量、
显示其转速及瞬时转速。
直流电机作为执行机构被广泛地应用于各类控制系统中,其驱动与转速精度是电机能够稳定工
作的关键。为此,
提出一种直流电机驱动与转速测量系统的设计方法,为直流电机制造、
定型以及应用提供了一些借鉴。
电子信息技术应用于传统产业,可以大幅度提高生产效率,提升产品的市场竞争力。在这种时代背景下,如果应用现代化手段对电机转速进行精确
测量,并辅以数码显示、
超速报警等装置,会给工业生产和生活带来许多方便。
为了能精确的测量转速,还要保证测量的实时
性。随着微型计算机的广泛应用,
特别是高性价比的单片机的涌现,转速测量普遍采用了以单片机为核心的数字法,智能化微电脑代替了一半的机械式或模拟量结构。
2
系统设计方案
2.1
设计方案
一般来说,电机测速的反射面设计采取两种方案:
使用敏感机械齿盘,沿圆周均匀分布6个齿,进行发兰,再磨光,则齿作为光反射面,槽作为光不反射面。敏感机械齿盘套在电机轴上。由于敏感机械
齿盘有6个齿,
电机转1转,光电开关输出6个脉冲信号。
使用2个反光片置于电机表面反光片位置做为反射面,其他部分做为不反射面。在电机外壳上有2个反光片,电机每转输出的是2个脉冲信号。
再应用单片机采用测频法对光电开关输出脉
第34卷第6期冲信号的频率进行检则。
2.2系统结构设计
光纤传感器部分当反射面与光纤探头相对时,光纤探头的红外光被反射,收光器接收到反射光,放大器输出低电平。当电机表面其他部位与光纤探头相对时,光纤探头的红光被阻断,收光器接收不到反射光,放大器输出高电平。产生的一系列高低电平,经整形后便成为一系列的测速脉冲,将此脉冲接单片机输入端P40脚,由单片机处理脉冲信号,并将测出的转速值输出到数字显示系统,从而起到转速显示的作用。
3硬件设计
本设计硬件部分分成四个单元:光纤式光电开关测速脉冲系统;整形电路;单片机系统;显示电路。
3.1测速传感器及转换电路
于电机上安装光纤式传感器,在电机表面安装反光片以作反射面。当反射面与光纤探头相对时,光纤探头的红外光被反射,收光器探头接收到反射
光。当电机表面其他部位与光纤探头相对时,
光纤探头的红光被阻断,收光器接收不到反射光。
组成光电开关的光电耦合器可分为反射型和
遮蔽型两种。反射型光耦的探头中,
发光二极管和光敏三极管封装在同一端面上。当有物体靠近探头时,由发光管射出的红外光束被反射到三极管的受光面,光电开关输出不同电平。光纤检测结构原理如图2所示。
开关式光电传感器的输出信号对应于光电信
号“有”、“无”受到光照两种状态,即输出特性是断续变化的开关信号。这类传感器要求光电元件灵敏度高,而对元件的光照特性要求不高。图3为光纤传感器工作示意图,光电信号经过晶体管放大输出。
3.2整形电路
由光纤传感器产生的测速脉冲,由于电压起伏过于微弱,还不能被单片机识别,需要整形放大。本装置采用NE555P 电路组成的施密特触发器整形及S9014放大。其电路见图4。
3.3单片机系统
ATmega16是基于增强的AVR RISC 结构的低功耗8位CMOS 微控制器。由于其先进的指令集以及单时钟周期指令执行时间,ATmega16的数据吞
吐率高达1MIPS/MHz ,
从而可以缓减系统在功耗和处理速度之间的矛盾。3.4显示电路
LED 采用动态扫描方式驱动,PD4-PD7口为4位数码管位选线输入,PC0-PC7口为8位数码管位
选线输入,
PA0-PA7口为段码输入。其中,数码管为共阳极性。
图5是4位数码管电路图,显示定时器的定时时间。
图1电路总体框图
光纤
光纤式光电开关
脉冲
整形
单片机
显示
电机
转速
不反射面
发射接收
(a )光纤探头与反射面相对
(b )光纤探头不与反射面相对
图3光纤传感器工作示意图
R A
476
2
Input
1
3
58V CC
(5V to 15V )
R L
Output
GND OUT
V CC
CONT RESET DISCH
THRES TRIG
图4整形电路单元电路图
图2光纤传感器安装示意图
红外发射管光敏三极管
输出
李孺昕等:基于ATmega16单片机光纤转速检测
63
中国测试技术
4系统软件设计
整个系统的软件设计采用了C语言进行编程,
整个系统软件包括数码管动态显示、按键扫描以及
计数功能。
4.1程序设计
程序主要配合硬件完成键盘扫描功能、LED显示功能、传感器检测计数功能等。总体程序流程框图见图6。
4.2键盘扫描程序设计
按键扫描:通过对按键扫描确定按键按下,实现相应功能。键盘扫描流程图如图7所示。
程序代码:
keyboard()
{int k=0;
DDRC=0xff;
DDRB=0x00;
for(k=0;k<5;k++)
{PORTC=keynum[k];
PORTA=0xff;
switch(PORTC)
{case0x7f:if((PINB&0x04)==0x04)
{while(PINB&0x04);
led4[move]++;if(led4[move]==10)
led4[move]=0;
};break;
case0xef:if((PINB&0x04)==0x04){while(PINB&0x04);
move--;
if(move==-1)
move=3;
};break;
case0xdf:if((PINB&0x04)==0x04){while(PINB&0x04);
move++;
if(move==4)
move=0;
};break;
case0xbf:if((PINB&0x04)==0x04){start();
flag=0;
};break;
}
display();
}
}
led4[move]--;
{if(led4[move]==-1)
led4[move]=9;
};
};break;
case0xf7:if((PINB&0x04)==0x04)
开始
定时器初始化
计时器计时
计数器计数
取出计数值
显示电机转速
返回
图6软件系统流程图
keyboard
延时消抖有键按下否?
延时消抖
N
N
Y
Y
N
Y
再判有键闭合吗?
再逐行扫描
判断键值,做相应处理
调用显示
延时判断按键是否松开
返回
图7键盘扫描流程图
VCC
2N29052N29052N29052N2905
Q5
R11
PW1
Q4
PW2
R12
R10
Q3
PW3
R9
Q2
PW4
1
2
3
41
2
3
41
2
3
41
2
3
4
LED4
78787878
56PW1
56PW2
56PW3
56PW4
图5四位LED显示电路
第34卷第6期
{while(PINB&0x04)
4.3LED显示程序
LED显示通过数码管显示按键所实现功能。LED显示程序如下所示。
程序代码:
display1()
{DDRA=0xff;
DDRC=0xff;
DDRD=0xff;
int i,k,j;
int d=1;
for(i=0;i<12;i++)
if(i<8)
{
k=led8[i];
PORTD=0xff;
PORTC=~(0x01<if((d==1)&&(i<7))
{
if(led8[i]==0)
PORTC=0xff;
if(led8[i]!=0)
d=0;
}
PORTA=segment[k];
LED_delay();
}
else
{
j=led4[i-8];
PORTC=0xff;
PORTD=~(0x10<<(i-8));
if((d==1)&&((i-8)<3))
{
if(led4[i-8]==0)
PORTD=0xff;
if(led4[i-8]!=0)
d=0;
}
PORTA=segment[j];
LED_delay();
}
5结束语
设计在经过了电机与光纤传感器的安装配置、脉冲采集电路的焊接之后,由于客观原因无法继续装配硬件部分,所以显示计数部分使用的生产实习时所制作的ATmega16单片机系统。光电开关部分由于所购器件功率过大,导致灵敏度存在偏差,无法有效的检测产生脉冲信号。
本数字测速装置具有成本低,精度高,抗干扰能力强的特点。随着电机测速装置的广泛应用,本装置在降低测速器成本,提高测速稳定性及可靠性等方面是很有价值的,而且可以达到一般工业测速的测量标准。
转速是电动机极为重要的一个状态参数,在很多运动系统的测控中,都需要对电机的转速进行测量,转速测量的精度直接影响系统的控制情况,它是关系测控效果的一个重要因素。不论是直流调速系统还是交流调速系统,只有转速的高精度检测才能得到高精度的控制系统。
在电机的转速测量中,影响测量精度的主要因素有两个:(1)采样点的多少,采样点越多,速度测量结果越精确,尤其是对于低转速的测量;(2)采样频率,采样频率越高,采样的数据就越准确。
参考文献
[1]何立民.单片机应用系统设计[M].北京:北京航空航天大
学出版社,1990.
[2]徐永权.Flash单片机原理及应用[M].北京:电子工业出
版社,1997:196-219.
[3]ALSTRON/SEEKA/TAKEX产品手册[M].西安:西安中星
测控有限责任公司,2002.
[4]韩英桃,马瑞聊,等.精度测频法在转速转数测量显示系
统中的应用[J].测控技术,1998,17(1):53-55.
[5]韩云台.测试技术基础[M].北京:国防工业出版社,19.
[6]黄贤武,等.传感器原理与应用[M].成都:电子科技大学
出版社,1994.
[7]何立民.MCS-51系列单片机应用系统设计[M].北京:
北京航空航天大学出版社,1990.
[8]杨文杰.实时光电测试系统的研究[J].兰州交通大学报,
2003,22(6):55-58.
[9]顾春雷,胡育文.低压无功柔性补偿的功率因数检测[J].
电工技术杂志,2003,22(1):21-22.
[10]罗盛波,廖常初.转速转差率的数字化测量方法[J].电工
技术杂志,2002(4):43.
[11]罗文煜,李红欣.同步电动机功率因数检测与控制[J].
电工技术杂志,2002(4):10-11.
[12]高攸纲.屏蔽与接地[M].北京:北京邮电大学出版社,
2004.
[13]徐鹏根,等.电磁兼容性原理及应用[M].北京:国防工业
出版社,1996.
[14]刘丽,韩震宇,李龙,等.基于ATmega16单片机的步进
电机加减速控制[J].中国测试技术,2007,33(6):106-108.
李孺昕等:基于ATmega16单片机光纤转速检测65