北京信息科技大学测控综合实践课程设计报告题目:基于光电传感器的直流电机转速测量系统设计学院:仪器科学与光电工程学院专业:测控技术与仪器学生姓名:摘要Ⅰ摘要基于单片机的转速测量方法较多,本次设计主要针对于光电传感器测量直流电机转速的原理进行简单介绍,并说明它是如何对电机转速进行测量的。通过实验得到结果并进行了数据分析。本次设计应用了STC89C52RC单片机,采用光电传感器测量电机转速的方法,其中硬件系统包括脉冲信号的产生模块、脉冲信号的处理模块和转速的显示模块三个模块,采用C语言编程,结果表明该方法具有简单、精度高、稳定性好的优点。关键词:直流电机;单片机;PWM调节;光电传感器AbstractⅡ1目录摘要……………………………………………………………………………………I第一章概述…………………………………………………………………………11.1课设目标……………………………………………………………………11.2内容…………………………………………………………………………1第二章系统设计原理………………………………………………………22.1STC89C52单片机介绍…………………………………………………22.2STC89C52定时计数器………………………………………………42.3STC89C52中断控制………………………………………………………62.4光电传感器……………………………………………………………………62.5数码管介绍…………………………………………………………………7第三章硬件系统设计………………………………………………………………103.1测速信号采集及其处理………………………………………………103.2单片机处理电路设计…………………………………………………113.3显示电路……………………………………………………………123.4PWM驱动电路…………………………………………………………13第四章软件设计……………………………………………………………144.1语言选用……………………………………………………………144.2程序设计流程图………………………………………………………144.3原程序代码…………………………………………………………15第五章数据分析……………………………………………………………19总结…………………………………………………………………………20附件……………………………………………………………………………………21参考文献………………………………………………………………………………231第一章概述在工程实践中,经常会遇到各种需要测量转速的场合,例如在发动机、电动机、卷扬机、机床主轴等旋转设备的试验、运转和控制中,常需要分时或连续测量和显示其转速及瞬时转速。目前国内外测量电机转速的方法有很多,按照不同的理论方法,先后产生过模拟测速法(如离心式转速表、用电机转矩或者电机电枢电动势计算所得)、同步测速法(如机械式或闪光式频闪测速仪)以及计数测速法。计数测速法又可分为机械式定时计数法和电子式定时计数法。其中应用最广的是光电式,光电式测系统具有低惯性、低噪声、高分辨率和高精度的优点。加之激光光源、光栅、光学码盘、CCD器件、光导纤维等的相继出现和成功应用,使得光电传感器在检测和控制领域得到了广泛的应用。而采用光电传感器的电机转速测量系统测量准确度高、采样速度快、测量范围宽和测量精度与被测转速无关等优点,具有广阔的应用前景。这次设计的内容包含了多个方面,从脉冲信号的产生模块、脉冲信号的处理模块和转速的显示模块三个模块入手,全面锻炼了我们信号采集,处理和分析的工作能力。1.1课设目标通过51单片机进行PWM驱动直流电机转动,然后使用对射式红外光电传感器通过检测直流电机上的光电码盘进行脉冲测量,单片机处理脉冲最后数码管显示实际转速。1.2内容1.2.1总体方案本文针对电机的转速进行测量,以单片机为核心对光电开关产生的数字信号进行运算,从而测得电机的转速,然后用数码管把电机的转速显示出来。即通过光电开关将电机的转数转换成0,1的数字量,只要转轴每旋转一周,产生一个或固定的多个脉冲,并将脉冲送入单片机中进行计数和计算,就可获得转速的信息。系统主要由STC89C52单片机处理系统、电机、传感器检测单元、信号处理单元和显示系统等几个部分组成,如图1.1:图1.1单片机STC89C52PWM驱动直流电机光电传感器测量脉冲数码管显示转速2第二章系统设计原理2.1STC89C52单片机介绍2.1.1STC89C52主要功能及PDIP封装STC89C52是由深圳宏晶科技公司生产的与工业标准MCS-51指令集和输出管脚相兼容的单片机。STC89C52主要功能如表2.1所示,其PDIP封装如图2.1所示主要功能特性兼容MCS51指令系统8K可反复擦写FlashROM32个双向I/O口256x8bit内部RAM3个16位可编程定时/计数器中断时钟频率0-24MHz2个串行中断可编程UART串行通道2个外部中断源共6个中断源2个读写中断口线3级加密位低功耗空闲和掉电模式软件设置睡眠和唤醒功能表2.1STC89C52主要功能2.1.2STC89C52引脚介绍①主电源引脚(2根)VCC(Pin40):电源输入,接+5V电源GND(Pin20):接地线②外接晶振引脚(2根)XTAL1(Pin19):片内振荡电路的输入端XTAL2(Pin20):片内振荡电路的输出端③控制引脚(4根)RST/VPP(Pin9):复位引脚,引脚上出现2个机器周期的高电平将使单片机复位。ALE/PROG(Pin30):地址锁存允许信号PSEN(Pin29):外部存储器读选通信号EA/VPP(Pin31):程序存储器的内外部选通,接低电平从外部程序存储器读指令,如果接高电平则从内部程序存储器读指令。④可编程输入/输出引脚(32根)STC89C52单片机有4组8位的可编程I/O口,分别位P0、P1、P2、P3口,每个口有8位(8根引脚),共32根。P0口(Pin39~Pin32):8位双向I/O口线,名称为P0.0~P0.7P1口(Pin1~Pin8):8位准双向I/O口线,名称为P1.0~P1.7P2口(Pin21~Pin28):8位准双向I/O口线,名称为P2.0~P2.7P3口(Pin10~Pin17):8位准双向I/O口线,名称为P3.0~P3.73STC89C524039383435363727282930313233232425262221P1.01232019181716151413121110987654T0/P3.4INTO/P3.2RXD/P3.0RSTVccSCK/P1.7MISO/P1.6MOSI/P1.5P1.4P1.3P1.2P1.1TXD/P3.1INTI/P3.3T1/P3.5WR/P3.6RD/P3.7XTAL2XTAL1GNDP0.0(AD0)PSENALE/PROGEA/VppP0.1(AD1)P0.7(AD7)P0.6(AD6)P0.5(AD5)P0.4(AD4)P0.3(AD3)P0.2(AD2)P2.7(AD15)P2.6(AD14)P2.1(AD9)P2.2(AD10)P2.3(AD11)P2.4(AD12)P2.5(AD13)P2.0(AD8)图2.1STC89C52PDIP封装图2.1.3STC89C52最小系统最小系统是指能进行正常工作的最简单电路。STC89C52最小应用系统电路如图2.2所示。它包含五个电路部分:电源电路、时钟电路、复位电路、片内外程序存储器选择电路、输入/输出接口电路。其中电源电路、时钟电路、复位电路是保证单片机系统能够正常工作的最基本的三部分电路,缺一不可。①电源电路芯片引脚VCC一般接上直流稳压电源+5V,引脚GND接电源+5V的负极,电源电压范围在4~5.5之间,可保证单片机系统能正常工作。为提高电路的抗干扰性能,通常在引角Vcc与GND之间接上一个10uF的电解电容和一个0.1uF陶片电容,这样可抑制杂波串扰,从而有效确保电路稳定性。②时钟电路单片机引脚18和引脚19外接晶振及电容,STC89C52芯片的工作频率可在2~33MHz范围之间选,单片机工作频率取决于晶振XT的频率,通常选用11.0592MHz晶振。两个小电容通常取值3pF,以保证振荡器电路的稳定性及快速性。③复位电路一般若在引脚RST上保持24个工作主频周期的高电平,单片机就可以完成复位,但为了保证系统可靠地复位,复位电路应使引脚RST保持10ms以上的高电平。如图复位电路带有上电自动复位功能,当电路上电时,由于C1电容两端电压值不能突变,电源+5V会通过电容向RST提供充电电流,因此在RST引脚上产生一高电平,使单片机进入复位状态。随着电容C1充电,它两端电压上升使得RST电位下降,最终使单片机退出复位状态。正常运行时,可按复位按钮对单片机复位4EA/VP31X119X218RESET9RD17WR16INT012INT113T014T115P10/T1P11/T2P123P134P145P156P167P178TXD11P0039RXD10P0138P0237P0336Vcc40P0435ALE/P30P0534PSEN29P0633P2728P0732P2627P2021P2526P2122P2425P2223P2324GND208052R1200R210K复位按键C110uFC230uFC330uFC410uFC50.1uFXTGNDGNDVCC+5VVCC+5VGND图2.2STC89C52最小系统原理图2.2STC89C52定时计数器2.2.1定时/计数器的结构和工作原理51系列单片机有2个16位定时/计数器:T0和T1;2个定时器都有定时或事件计数的功能,可用于定时控制、延时、对外部事件计数和检测等场合;定时/计数器实际上是16位加1计数器。T0由2个8位持殊功能寄存器TH0和TL0构成,T1由2个8位持殊功能寄存器TH1和TL1构成。T0和T1都可由软件设置为定时或计数工作方式;T0和T1受2个特殊功能寄存器TMOD和TCON控制。5图2.3定时/计数器T0(或T1)的内部结构和控制信号S开关:S打向上,定时;S打向下,计数。计数满,标志置位,产生中断。K开关:GATE=0时,TR0=1,定时/计数器启动工作;GATE=1时,INT0和TR0同时为1时,启动工作。2.2.2定时/计数器的寄存器寄存器有2个:控制寄存器TCON(88H)和工作方式寄存器TMOD(89H)1.工作方式寄存器TMOD工作方式寄存器TMOD用于设置定时/计数器的工作方式,低四位用于T0,高四位用于T1。其格式如下:GATE:门控位。GATE=0时,以运行控制位TRX(X=0,1)来启动定时/计数器运行;GATA=1时,要用软件使TR0或TR1为1,同时外部中断引脚或也为高电平时,才能启动定时/计数器工作;C/T计数器模式和定时器模式选择位C/T=1时,选择计数器模式,计数器对外部输入引脚T0(P3.4)或T1(P3.5)的外部脉冲计数;C/T=0时,选择定时器模式。M1M0:工作方式设置位。定时/计数器有四种工作方式,由M1M0进行设置。2.控制寄存器TCONTCON的低4位用于控制外部中断,已在前面介绍。TCON的高4位用于控制定时/计数器的启动和中断申请。其格式如下:6TF1(TCON.7):T1溢出中断请求标志位。T1计数溢出时由硬件自动置TF1为1。CPU响应中断后TF1由硬件自动清0。T1工作时,CPU可随时查询TF1的状态。所以,TF1可用作查询测试的标志。TF1也可以用软件置1或清0,同硬件置1或清0的效果一样。TR1(TCON.6):T1运行控制位。TR1置1时,T1开始工作;TR1置0时,T1停止工作。TR1由软件置1或清0。所以,用软件可控制定时/计数器的启动与停止。TF0(TCON.5):T0溢出中断请求标志位,其功能与TF1类同。TR0(TCON.4):T0运行控制位,其功能与TR1