《基于光电传感器的转速测量系统设计课程设计说明书(17页).doc》由会员分享,可在线阅读,更多相关《基于光电传感器的转速测量系统设计课程设计说明书(17页).doc(16页珍藏版)》请在taowenge.com淘文阁网|工程机械CAD图纸|机械工程制图|CAD装配图下载|SolidWorks_CaTia_CAD_UG_PROE_设计图分享下载上搜索。
1、-基于光电传感器的转速测量系统设计课程设计说明书-第 16 页课程设计说明书成绩题 目 基于光电传感器的转速测量系统设计 课 程 名 称 电力电子技术课程设计 课程设计任务书课 程 名 称 检测技术与系统课程设计 院(系、部、中心) 电力工程学院 专 业 电气工程及其自动化 班 级 电气101 起 止 日 期 13.6.36.14 指 导 教 师 1课程设计应达到的目的通过对本课程的设计,使学生掌握常见被测量的检测原理、方法和技术,了解国内外对这些工程量进行测控的系统组建原理,通过对检测系统的设计与分析,增强学生理解和运用所学知识来解决实际问题的能力,逐步掌握根据具体测控要求、性能指标设计出先
2、进测控系统的方法和技术。2课程设计题目及要求题目:基于接近传感器的转速测量系统设计要求:(1)性能指标:测速范围:03000RPM,测量精度:0.5RPM;(2)根据题意,明确测速系统性能指标及系统能完成的功能;(3)根据系统要求,选择合适的传感器(尽量选择实验室中已有的传感器);(4)设计传感器测量电路;(5)选择单片机的品种、型号,设计单片机的外围测量电路;(6)计算有关的电路参数,有条件的情况下,根据实验室现有设备进行实验数据的测取,明确测量电路输出与被测非电量的关系;(7)画出系统原理框图(此部分放在说明书的开始);(8)画出系统电路图,最好用PROTEL画;(9)在说明书中详细说明本
3、系统工作原理。3课程设计任务及工作量的要求包括课程设计计算说明书、图纸、实物样品等要求(1) 给出设计说明书一份;(2) 有条件的情况下尽量给出必要的实验数据;(3) 在说明书中附上完整的系统电路原理图(手画或用PROTEL画)。4主要参考文献1、 李现明,吴皓编著.自动检测技术.北京:机械工业出版社,20092、 徐仁贵.单片微型计算机应用技术.北京:机械工业出版社.20013、 陈爱弟.Protel99实用培训教程.北京:人民邮电出版社.20005课程设计进度安排起 止 日 期工 作 内 容13年6月4日布置设计任务,熟悉课题,查找资料;13年6月5日结合测控对象,选择合适的传感器,理解传
4、感器性能;13年6月6日设计传感器测量电路,选择合适的单片机,设计其外围电路;13年6月7日设计电路参数,有条件情况下,在实验室进行实验,进一步理解测量电路输入输出关系;13年6月8日继续设计论证电路参数,完善系统设计方案;13年 6月 9日查找资料,理解系统各部分工作原理;13年 6月 10日理清系统说明要点,着手设计说明书的书写;13年 6月 11日书写设计说明书,充分理解系统每一部分作用;13年 6月 12日完善设计说明书,准备设计答辩。13年 6月 14日设计答辩。6成绩考核办法平时表现30%,设计成果40%,答辩表现30%.教研室审查意见:教研室主任签字: 年 月 日院(系、部、中心
5、)意见:主管领导签字: 年 月 日目 录二、课程设计正文 1、光电传感器的应用概述 2、系统工作原理及方案 (1)系统框图 (2)光电传感器原理(3)转速测量原理 3、系统硬件电路设计 (1)光电转换及信号调理电路 (2)脉冲产生电路设计 4、系统软件电路设计 (1)AT89C52基本性能及最小系统 (2)系统软件程序设计(3)系统仿真结果 5、课程设计总结 6、主要参考文献 7、附录1.概述转速测量系统的发展背景 随着超大规模集成电路技术提高,尤其是单片机应用技术以其功能强大,价格低廉的显著特点,使全数字化测量转速系统得以广泛应用。由于单片机在测量转速方面具有体积小、性能强、成本低的特点,越
6、来越受到企业用户的青睐。本设计课题的目的和意义 在工程实践中,经常会遇到各种需要测量转速的场合, 例如在发动机、电动机等旋转设备的试验、运转和控制中,常需要分时或连续测量和显示其转速及瞬时转速。要测速,首先要解决是采样问题。本课程设计使用单片机AT89C52采样信号。因此转速的测试具有重要的意义。2.系统工作原理及方案 1.系统框图系统由传感器检测单元、信号调理放大电路,单片机AT89C52、LED显示模块、系统软件组成。其中信号调理电路包含信号放大、波形变换和波形整形。对待测信号进行放大的目的是降低对待测信号的幅度要求;波形变换和波形整形电路则用来将放大的信号转换成可与单片机匹配的TTL信号
7、;通过对单片机的编程设置可使内部定时器T0对输入脉冲进行计数,这样就能精确地算出加到T0引脚的单位时间内检测到的脉冲数;系统的原理框图如下所示。2.光电传感器的原理检测原理光电传感器是利用光电转换原理,来检测机械量转速的传感元件,将光源发出的光调制成与转速相关的光信号,再转换成电信号,通过检测信号频率或状态图形来测量转速。光电光转速传感器主要由光源,调制盘,光电转换元件三个部分组成。电检测方法具有精度高、反应快、非接触等优点,而且可测参数多,传感器的结构简单,形式灵活多样。光电传感器一般可以分为两大类:直射式、反射式。基本的原理就是当发射管光照射到接收管时,接收管导通,反之关断。脉冲发生源的硬
8、件结构图如图所示。图1脉冲发生源硬件结构图(左为正视图,右为侧视图)直射式光电转速计的工作原理如图1和图2,被测转轴上装有调制盘,调制盘是带孔或者带齿的圆盘,带孔的如图1,带齿的如图3,调制盘的一边放置光源,另一边放置光电元件。调制盘随轴转动,当光线通过小孔或齿缝时,光电元件就发生一个电脉冲。转轴连续转动,光电元件就输出一列与转速及调制盘上的孔(或齿)数成正比。电脉冲输入测量电路后经放大整形,再送入频率计技术现实。 图2光电传感器的原理图 图3遮光叶片转速测量原理一般的转速长期测量系统是预先在轴上安装一个有60 齿的测速齿盘,当测速齿槽旋转一周,光敏元件就能感受与开孔数相等次数的光次数,即每转
9、一周产生60个电脉冲信号。临时性转速测量系统,多采用光电传感器,从转轴上预先粘贴的一个标志上获得一转一个转速脉冲,随后利用电子倍频器和测频方法实现转速测量。不论长期或临时转速测量,都可以在微处理器的参与下,通过测量转轴上预留的一转一齿的鉴相信号或光电信号的周期,换算出转轴的频率或转速。即通过速度传感器,将转速信号变为电脉冲,利用微机在单位时间内对脉冲进行计数,再经过软件计算获得转速数据。 即:n=N/ (mT) n 转速、单位:转/ 分钟;N 采样时间内所计脉冲个数;T采样时间、单位:分钟;m 每旋转一周所产生的脉冲个数(通常指测速码盘的齿数) 。通常m=60, 那么1 秒钟内脉冲个数N就是转
10、速n, 即: n=N/ (mT) =N/601/60=N3.系统硬件电路的设计系统硬件部分包含输入模块、显示模块、控制模块、测速模块等。在硬件搭建前,先通过Proteus Pro 7.5进行硬件仿真实现。光电转换及信号调理设计由于系统需要将光信号转换为电信号,因而需要使用光电传感器并设计相应的信号调理电路,以得到符合要求的脉冲信号,送给单片机AT89C52进行计数,同时得到计数的时间,由单片机进行相关计算以得到电动机转速。传感器将电机的转速信号转变成了电脉冲信号,该信号经过LM358集成运放整形驱动,送到单片机进行脉冲计数,从而测出电动机转速。介绍一下LM358,:LM358里面包括有两个高增
11、益、独立的、内部频率补偿的双运放,适用于电压范围很宽的单电源,而且也适用于双电源工作方式,它的应用范围包括传感放大器、直流增益模块和其他所有可用单电源供电的使用运放的地方使用。光电转换部分与单片机的连接框图如图所示脉冲产生电路设计由于proteus不能仿真光电传感器,则用一个方波代替光电传感器的将光信号转换成电信号的输出。如图发现,方波电压的幅值已经被放大,将这个信号输入单片机中作脉冲计数。4.系统软件电路设计AT89C52基本性能单片机我们选用AT89C52(引脚图如下)AT89C52是一个低电压,高性能CMOS 8位单片机,片内含8k bytes的可反复擦写的Flash只读程序存储器和25
12、6 bytes的随机存取数据存储器(RAM),器件采用ATMEL公司的高密度、非易失性存储技术生产,兼容标准MCS-51指令系统,片内置通用8位中央 处理器和Flash存储单元,功能强大的AT89C52单片机可为您提供许多较复杂系统控制应用场合。 AT89C52有40个引脚,32个外部双向输入/输出(I/O)端口,同时内含2个外中断口,3个16位可编程定时计数器,2个全双工串行通信口,2 个读写口线,AT89C52可以按照常规方法进行编程,也可以在线编程。其将通用的微处理器和Flash存储器结合在一起,特别是可反复擦写的 Flash存储器可有效地降低开发成本。AT89C52引脚图 单片机最小系
13、统单片机最小系统包括时钟电路和复位电路。单片机工作时,从取指令到译码再进行微操作,必须在时钟信号控制下才能有序地进行,时钟电路就是为单片机工作提供基本时钟的。单片机的时钟信号通常有两种产生方式:内部时钟方式和外部时钟方式。内部时钟方式的原理电路如下图所示。在单片机XTAL1和XTAL2引脚上跨接上一个晶振和两个稳频电容,可以与单片机片内的电路构成一个稳定的自激振荡器。外接电容的作用是对振荡器进行频率微调,使振荡信号频率与晶振频率一致,同时起到稳定频率的作用,一般选用2030pF的瓷片电容。复位电路是利用电容充电来实现复位。在电源接通瞬间,RST引脚上的电位是高电平(Vcc),电源接通后对电容进
14、行快速充电,随着充电的进行,RST引脚上的电位也会逐渐下降为低电平。最小系统如图所示显示电路设计led数码管(LED Segment Displays)是由多个发光二极管封装在一起组成“8”字型的器件,引线已在内部连接完成,只需引出它们的各个笔划,公共电极。led数码管常用段数一般为7段有的另加一个小数点,led数码管根据LED的接法不同分为共阴和共阳两类,了解LED的这些特性,对编程是很重要的,因为不同类型的数码管,除了它们的硬件电路有差异外,编程方法也是不同的。共阴和共阳极数码管,它们的发光原理是一样的,只是它们的电源极性不同而已。内部电路如下:点亮LED显示器有两种方式:一是静态显示,二
15、是动态显示。动态显示,就一位一位地轮流点亮各位显示器(扫描),对于每一位显示器来说,每隔一段时间点亮一次。显示器的亮度既与导通电流有关,也与点亮时间和间隔时间的比例有关。调整电流和时间参数,可实现亮度较高较稳定的显示。本文采用4位LED动态显示电路如图图6 4位动态LED显示电路根据设计的复位、晶振、显示电路电路,我们做了一张总电路图。程序设计方案本系统采用89C52中T0定时器和T1计数器配合使用对转速脉冲定时计数。计数器T1工作于计数状态对外部脉冲进行计数;TO工作为定时器方式每次定时50ms,采用60次中断,即在计数器T1在3秒钟内对外部脉冲进行计数,然后根据3秒钟内的计数值推算出。(1
16、)定时/计数器的初始化定时/计数器的方式控制字TMOD,TMOD是一个不可按位寻址的特殊功能寄存器,其高四位专供T1作计数用,低四位供T0作定时用。(1) 定时/计数器的启动方式为GATE=0,用软件设置使TOCN中的运行控制位TR0和TR1为1,就可以启动T0和T1,称为软启动。(2) C/T: 定时/计数器方式选择位,C/T =0时作定时器用。C/T=1作计数器用。(3) M1M0工作方式选择位,这里 我们选M1M0=01,方式一,作16位定时/计数器用。综上所述,我们给TMOD应赋给二进制的01010001B,是十六进制的0x51。TMOD=0x51.TMOD寄存器如下表:对定时器T0与
17、计数器T1的初始化程序如下timer_init() /初始化子程序 EA=1; /开中断总允许ET0=1; /开定时器T0中断允许ET1=1; /开计数器T1中断允许TMOD=0X51; /TMOD=01010001BTH0=(65535-50000)/256; /初值的高位。定时器一个机器周期加1,一次中断为50ms对应50000个机器周期(振荡频率为12MHZ)TL0=(65535-50000)%256; /初值的低位TH1=0; /T1作计数器用,初值定为0x00TL1=0;TR0=1; /软启动方式TR1=1;(2)定时器中断程序中断部分要对单片机产生的中断次数计数,定时器每次触发中断
18、需要的时间为50ms,我们需要单片机在3秒钟内对脉冲计数,所以要对中断计数60次。中断程序要给TH0,TL0赋初值,同时要开启定时器T0。定时器中断程序void timer0() interrupt 1 n+;TR0=0; /T0停止工作TR1=0;TH0=(65535-50000)/256; /赋初值TL0=(65535-50000)%256;if(n=60) /若n自加到60则停止计数,一次中断50ms则60次中断就为3smm=0;mm|=TH1;mm=(mm8)|TL1;TH1=0; /赋初值0TL1=0; n=0; /n从头开始自加TR0=1; /T0开始工作TR1=1;显示部分程序本
19、系统采用动态数码管显示,所以程序如下:xian_shi() uchar qian,bei,shi,ge; /定义个十百千四个无符号整形参数uint jj;jj=mm;jj=jj/3; qian=jj/1000; /将个十百千位对应的数分别找出来bei=jj%1000/100;shi=jj%100/10;ge=jj%10;P2=0x10; /数码管的段选,如接线图P2.4=1,则左起第一个数码管显示P0=tableqian; /将千位的值所对应的十六进制码点来亮该数码管的中的八个小二极管delay(1); /作延时P2=0x20; /段选,则左起第二个数码管显示P0=tablebei; /将百位
20、的值所对应的十六进制码来点亮该数码管的中的八个小二极管delay(1); /延时P2=0x40;P0=tableshi; /十位delay(1);P2=0x80;P0=tablege; /个位delay(1);5.仿真及结果我们这里给单片机P3.5外接一个脉冲信号,来模拟关电开关给单片机的信号。仿真时,设置脉冲频率为700,如图所示,显示电路的数码管上显示700。设置脉冲频率为3000,如上图所示,显示电路的数码管上显示3000。6.参考文献1李现明,吴皓编著.自动检测技术.北京:机械工业出版社,20092徐仁贵.单片微型计算机应用技术.北京:机械工业出版社.20013. 陈爱弟.Protel
21、99实用培训教程.北京:人民邮电出版社.20017.附录总的电路图设计总系统程序单片机总体程序如下:#include#define uchar unsigned char/宏定义#define uint unsigned intuint mm=0; /定义参变量uchar n;uchar code table=0xc0,0xF9,0xA4,0xB0,0x99,0x92,0x82,0xF8,0x80,0x90;/定义编码表,给数码管复制delay(uint m) /子程序调用,作延时用 uint i,j;for(i=m;i0;i-)/i每加1,j经过60次自加for(j=60;j0;j-);xi
22、an_shi() uchar qian,bei,shi,ge; /定义个十百千四个无符号整形参数uint jj;jj=mm;jj=jj/3;qian=jj/1000; /将个十百千位对应的数分别找出来bei=jj%1000/100;shi=jj%100/10;ge=jj%10;P2=0x10; /数码管的段选,如接线图中,P2.4=1,则左起第一个数码管显示P0=tableqian; /将千位的值所对应的十六进制码点来亮该数码管的中的八个小二极管delay(1); /作延时P2=0x20; /段选,P2.5=1则左起第二个数码管显示P0=tablebei; /将百位的值所对应的十六进制码来点亮
23、该数码管的中的八个小二极管delay(1); /作延时P2=0x40;P0=tableshi; /显示十位的数delay(1);P2=0x80;P0=tablege; /显示个位的数delay(1);timer_init() /中断初始化子程序 EA=1; /开中断总允许ET0=1; /开定时器T0中断允许ET1=1; /开计数器T1中断允许TMOD=0X51; /TMOD=01010001BTH0=(65535-50000)/256; /初值的高位。定时器一个机器周期加1,一次中断为50ms对应50000个机器周期(振荡频率为12MHZ)TL0=(65535-50000)%256; /初值的
24、低位TH1=0; /T1作计数器用,初值定为0x00TL1=0;TR0=1; /软启动方式TR1=1;main()/主函数timer_init();/中断初始化P0=0; while(1) /永远循环显示和延时xian_shi();delay(2);void timer0() interrupt 1/“1”表示定时器中断0n+;TR0=0;TR1=0; /T0停止工作TH0=(65535-50000)/256; /赋初值TL0=(65535-50000)%256;if(n=60) /若n自加到60则停止计数,一次中断50ms则60次中断就为3smm=0;mm|=TH1;mm=(mm8)|TL1
25、;TH1=0; /赋初值0TL1=0; n=0; /n从头开始自加TR0=1; /T0开始工作TR1=1;void timer1() interrupt 3 /“3”表示计数器中断 TR1=0; /T1停止计数TR0=0;mm=0; 体会这次自动检测技术课程设计我们做了光电传感器测速,其中涉及到了光电传感器的应用、单片机的使用以及LED数码管的应用,首先我学会了protues的使用方法,依据查找的相关资料画出了相应的电路仿真图;然后我学会看怎么使用keil软件编程,将输入好的程序生成hex文件,调用到protues中的单片机中,然而我发现脉冲信号经过放大器接到单片机上会出现误差,相比脉冲经过放大电路后的波形的幅值小很多倍,虽然没能将脉冲放大电路与单片机连接仿真成功,但我还是收益很多。