1、基于单片机的电机转速测量系统设计1基于单片机的电机转速测量系统设计作者指导老师(安徽农业大学继续教育院09级电子信息工程合肥)摘要在工程实践中,经常会遇到各种需要测量转速的场合,测量转速的方法分为模拟式和数字式两种。模拟式采用测速发电机为检测元件,得到的信号是模拟量。数字式通常采用光电编码器,霍尔元件等为检测元件,得到的信号是脉冲信号。随着微型计算机的广泛应用,特别是高性能价格比的单片机的出现,转速测量普遍采用以单片机为核心的数字式测量方法。本文便是运用AT89C51单片机控制的智能化转速测量仪。电机在运行过程中,需要对其进行监控,转速是一个必不可少的一个参数。本系统就是对电机转速进行测量,并
2、可以和PC机进行通信,显示电机的转速,并观察电机运行的基本状况。本设计主要用AT89C51作为控制核心,由霍尔传感器、LED数码显像管、HIN232CPE电平转换、及RS232构成。详细介绍了单片机的测量转速系统及PC机与单片机之间的串行通讯。充分发挥了单片机的性能。本文重点是测量速度并显示在5位LED数码管上。其优点硬件是电路简单,软件功能完善,测量速度快、精度高、控制系统可靠,性价比较高等特点。关键字MSC51(单片机);转速;传感器基于单片机的电机转速测量系统设计2ABSTRACTINTHEPROJECTPRACTICE,WEWILLMEETEACHKINDTONEEDFREQUENTL
3、YTOSURVEYTHEROTATIONALSPEEDTHESITUATION,THESURVEYROTATIONALSPEEDMETHODDIVIDESINTOTHESIMULATIONTYPEANDTHEDIGITALTWOKINDSTHESIMULATIONTYPEUSESMEASUREDTHATTHEFASTGENERATORISTHEDETECTINGELEMENT,OBTAINSTHESIGNALSIMULATESTHEQUANTITYDIGITALUSUALLYUSESTHEELECTROOPTICALENCODER,THEHALLPARTANDSOONISTHEDETECTIN
4、GELEMENT,OBTAINSTHESIGNALISTHESIGNALIMPULSEALONGWITHMICROCOMPUTERSWIDESPREADAPPLICATION,SPECIALLYHIGHPERFORMANCEPRICECOMPAREDTOMONOLITHICINTEGRATEDCIRCUITSAPPEARANCE,THETACHOMETRICSURVEYUSESGENERALLYTAKETHEMONOLITHICINTEGRATEDCIRCUITASTHECOREDIGITALMEASURINGTECHNIQUEIGRADUATEDFROMTHEDESIGNOFTHEISSUE
5、ISCONTROLOFTHEINTELLIGENTUSEOFSCMSPEEDMEASURINGINSTRUMENTTHESYSTEMISTHEMOTORSPEEDMEASUREMENT,ANDPCANDCANCOMMUNICATETHATTHEMOTORSPEED,ANDTOOBSERVETHEMOTORRUNNINGTHEBASICSITUATIONTHEMAINDESIGNAT89C51CONTROLASTHECORE,BYTHEHALLSENSOR,LEDDIGITALCRT,HIN232CPELEVELCONVERSION,ANDARS232DETAILEDMEASUREMENTSOF
6、THESPEEDOFTHESCMSYSTEMANDPCANDTHESERIALCOMMUNICATIONBETWEENTHEMICROCONTROLLERGIVEFULLPLAYTOTHE基于单片机的电机转速测量系统设计3PERFORMANCEOFTHESCMTHISPAPERISTOMEASURETHESPEEDANDDISPLAYEDINFIVELEDDIGITALPIPETHEADVANTAGEOFASIMPLEHARDWAREANDSOFTWARECAPABILITIESIMPROVE,MEASURINGSPEED,HIGHPRECISIONANDCONTROLSYSTEMRELIAB
7、LE,COSTEFFECTIVEANDSOONKEYWORDMSC51ONECHIPCOMPUTER;SENSOR;TACHOMETER基于单片机的电机转速测量系统设计4目录摘要1ABSTRACT21序言42系统功能分析221系统功能概述222系统要求及主要内容33系统总体设计431硬件电路设计思路432软件设计思路54硬件电路设计641单片机模块6411处理执行元件6412时钟电路10413复位电路11414显示电路1242霍尔传感器简介15421霍尔器件概述15422霍尔传感器的应用17423AH41霍尔开关175软件设计2251单片机转速程序设计思路及过程23511单片机程序设计思路23
8、512单片机转速计算程序24513二十进制转换程序2552程序设计286系统调试3061硬件调试3062软件调试3163综合调试33基于单片机的电机转速测量系统设计564故障分析与解决方案3465结论与经验35参考文献37致谢38总电路图39基于单片机的电机转速测量系统设计11序言智能化转速测量可以对电机的转速进行测量,电机在运行的过程中,需要对其平稳性进行监测,适时对转速的测量有效地可以反映电机的状况。本系统主要由传感器,单片机AT89C51构成。可以对大范围转速进行测量,测量的转速精度高,还可以和PC机时时通信,实现对电机转速的测量。单片机的英文名称是MICROCONTROLLERUNIT
9、,缩写为MCU,又称为微控制器,它是一种面向控制的大规模集成电路芯片。它具有功能强、体积小、可靠性高、应用简单灵活,因而使用非常广泛,有力地推动各行业的技术发展和更新换代。本文首先在第二章绪论介绍了此系统的功能、技术指标以及主要内容等;在第三章论述了总体设计过程,确定了技术指标及器件的选择;第四章着重描述了系统硬件电路设计、硬件设计框图及所使用的各种芯片功能与特性;在第五章中重点剖析了软件设计的过程;最后在第六章中具体论述单片机、电平转换电路、通信的处理及调试。由于本人水平有限,加之时间仓促,论文中难免会有错误和不足之外,不够理想、许多方面还需要继续完善和改进。在这里恳请指导老师和各位专家老师
10、批评指正。在此特别感谢我的指导老师郭顺京老师的大力指导。基于单片机的电机转速测量系统设计22系统功能分析21系统功能概述功能系统主要实现功能是AT89C51单片机接收霍尔传感器传来的脉冲信号,单片机根据外部中断,以及内部定时器进行记数计算出电机转速送到LED显示,同时数据传给PC机,并在PC机屏幕上显示出来。记录各时段的转速,画出VT坐标图。组成及框图本系统通信部分是单片机经电平转换电路HIN232CP之后,通过串口RS232发送数据,由PC微机接收,微机部分用VISUALBASIC软件编写的界面作为PC机部分与单片机进行串口之间通信。传感器电路、转速测量、LED显示、电平转换电路设计等将在以
11、下章节作详细地设计。图21系统硬件电路应用从实用的角度看,评价一个系统实用价值的重要标准,就是这个系统对社会生活和科技观念有多大的贡献。转速测量系统具有大范围、高精度传感器单片机AT89C51电平转换电路LED显示驱动电路基于单片机的电机转速测量系统设计3等优点、测量速度快,这种系统将会有良好的应用。22系统要求及主要内容将霍尔传感器产生的脉冲信号输出入到单片机的外部中断0口,单片机工作在内部定时器工作方式0,对周期信号进行内部记数,调用计算公式算出转速,调用显示程序显示在LED上,同时通过串口向上位机发送转速数据。主要内容(1)单片机部分主要完成电机转速的测量(2)LED部分主要是把转速显示
12、出来,显示范围6036000R/MIN(3)发送部分主要是完成电平转换,送RS232向PC发送数据。(4)PC机部分主要完成将数据显示在界面并描绘出VT图23系统技术指标系统主要完成以下功能测量系统1设计并制作单片机的转速测量的硬件系统;2用汇编语言完成转速测量的软件系统;3要求把转速显示在5位LED上,精度为01;4能向上位机发送数据;5用9针RS232即可;通信部分1在微机部分采用VISUALBASIC编制RS232通信软件;2通信软件具有数据接受编辑框;3通信软件要适时对数据的记录,用时间曲线表示;根据系统要实现的功能以及要求,要实现单片机的转速测量主要是各个模块的设计,定时器记数功能、
13、以及LED驱动、电平转换及PC机之间基于单片机的电机转速测量系统设计4的通信。单片机可通过编程控制外围部件,能实现较高的自动化程度。以它为系统核心的控制模块可实现主从控制,完成预定的任务。3系统总体设计31硬件电路设计思路硬件设计的任务是根据总体设计要求,在选择的机型的基础上,具体确定系统中所要使用的元器件,设计出系统的原理框图、电路原理图。89C51单片机通过INT0输入传感器的脉冲信号,P0口P2口接LED动态显示。另由于PC系列微机串行口为RS232C标准接口,与输入、输出均为TTL电平的89C51单片机在接口规范上不一致,因此TTL电平到RS232接口电平的转换采用HIN232CP接口
14、芯片,该芯片可以用单电压(5V)实现RS232接口逻辑“1”(3V15V)和逻辑“0”(3V15V)的电平转换。转速测量部分的硬件设计思路本次设计单片机部分的硬件框图如图21所示。图31单片机部分硬件框图具体详细的叙述将在下面的章节中逐一介绍。复位电路CPU执行单元显示电路传感器发送电路基于单片机的电机转速测量系统设计532软件设计思路软件需要解决的是定时器0的记数和外部中断0的设定、由于测量的转速范围大,所以低速和高速都要考虑在内,关键在于一个四字节除三字节程序的实现。显示部分、需要有一个二进制到十进制的转化程序,以及转换成非压缩BCD的程序后、才能进行调用查表程序送到显示。PC机串口和单片
15、机串行口的工作方式,包括串行口的通讯速率、奇偶校验位、停止位等均由通信部分的软件部分实现。软件工作流程霍尔传感器利用磁电效应产生一周期脉冲向单片机的外部中断0(P32)口发送一个中断信号,定时器工作在内部定时,TH0、TL0设定初值为0,作为除数的低两字节,利用软件记数器、定时器0中断的次数作为除数高字节。中断完毕读取内部记数值作为除数,调用除法程序计算转速,再对二进制数进行一系列变换后调用查表显示程序,显示在LED上。(同时调用传送程序向上位机送数据,这里不是本文重点)转速部分软件设计思路AT89C51单片机的P32口接收传感器的信号。主要编写一个外部中断服务程序INT_0,读取记数值的三个
16、字节,并再次清0记数初值以便下次的记数和计算。调用两字节二进制三字节十进制(BCD)转换子程序BCD,再调用十进制转换成非压缩BCD程序CBCD、最后调用查表程序送显示。为了和PC通信,系统要求单片机晶振110592MHZ。软件的具体设计我们将在下面的章节中作详细介绍。基于单片机的电机转速测量系统设计64硬件电路设计硬件的功能由总体设计所规定,硬件设计的任务是根据总体设计要求,在选择的机型的基础上,具体确定系统中所要使用的元器件,设计出系统的电路原理图,必要时做一些部件实验,以确定电路图的正确性,以及工艺结构的设计加工、印制板的制作、样机的组装等。整个单片机测量转速系统为单片机控制模块、霍尔传
17、感器模块、发送模块,各个模块都承担着各自的任务。设计单片机模块,考虑到单片机本身的外围电路较多,所以在单片机模块方面需要极为小心。在整个电路设计时要考虑电平转换电路,具体每一部分的设计将在以下章节中详细分析。41单片机模块根据系统功能要求以及单片机硬件电路设计思路(如图31)对单片机模块进行设计,要使单片机准确的测量电机转速,并且使测出的数据能显示出来,所以整个单片机部分分为传感器电路、时钟电路、复位电路、执行元件以及显示电路五个部分。411处理执行元件单片机我们采用AT89C51其引脚图如图41,相较于INTEL公司的8051它本身带有一定的优点。AT89C51是一种带4K字节闪烁可编程可擦
18、除只读存贮器(FPEROMFALSHPROGRAMMABLEANDERASABLEREADONLY基于单片机的电机转速测量系统设计7MEMORY)的低电压,高性能CMOS8位微处理器,俗称单片机。该器件采用ATMEL高密度非易失存储器制造技术制造,与工业标准的MCS51指令集和输出管脚相兼容。由于将多功能8位CPU和闪烁存储器组合在单个芯片中,ATMEL的AT89C51是一种高效微控制器,AT89C单片机为很多嵌入式控制系统提供了一种灵活性高且价廉的方案。图41AT89C51引脚图主要特性与MCS51兼容4K字节可编程闪烁存储器寿命1000写/擦循环数据保留时间10年全静态工作0HZ24HZ三
19、级程序存储器锁定1288位内部RAM32可编程I/O线两个16位定时器/计数器5个中断源可编程串行通道低功耗的闲置和掉电模式片内振荡器和时钟电路基于单片机的电机转速测量系统设计8管脚说明1VCC供电电压;2GND接地;3P0口P0口为一个8位漏极开路双向I/O口,每脚可吸收8TTL门电流。当P1口的管脚第一次写1时,被定义为高阻输入。P0能够用于外部程序数据存储器,它可以被定义为数据/地址的第八位。在FIASH编程时,P0口作为原码输入口,当FIASH进行校验时,P0输出原码,此时P0外部必须被拉高。4P1口P1口是一个内部提供上拉电阻的8位双向I/O口,P1口缓冲器能接收输出4TTL门电流。
20、P1口管脚写入1后,被内部上拉为高,可用作输入,P1口被外部下拉为低电平时,将输出电流,这是由于内部上拉的缘故。在FLASH编程和校验时,P1口作为第八位地址接收。5P2口P2口为一个内部上拉电阻的8位双向I/O口,P2口缓冲器可接收,输出4个TTL门电流,当P2口被写“1”时,其管脚被内部上拉电阻拉高,且作为输入。并因此作为输入时,P2口的管脚被外部拉低,将输出电流。这是由于内部上拉的缘故。P2口当用于外部程序存储器或16位地址外部数据存储器进行存取时,P2口输出地址的高八位。在给出地址“1”时,它利用内部上拉优势,当对外部八位地址数据存储器进行读写时,P2口输出其特殊功能寄存器的内容。P2
21、口在FLASH编程和校验时接收高八位地址信号和控制信号。6P3口P3口管脚是8个带内部上拉电阻的双向I/O口,可接收输出4个TTL门电流。当P3口写入“1”后,它们被内部上拉为高电平,并用作输入。作为输入,由于外部下拉为低电平,P3口将输出电流(ILL)这是由于上拉的缘故。P3口也可作为AT89C51的一些特殊功能口,如下表41所示7RST复位输入。当振荡器复位器件时,要保持RST脚两个机器周期的高电平时间。基于单片机的电机转速测量系统设计98ALE/PROG当访问外部存储器时,地址锁存允许的输出电平用于锁存地址的地位字节。在FLASH编程期间,此引脚用于输入编程脉冲。在平时,ALE端以不变的
22、频率周期输出正脉冲信号,此频率为振荡器频率的1/6。因此它可用作对外部输出的脉冲或用于定时目的。然而要注意的是每当用作外部数据存储器时,将跳过一个ALE脉冲。如想禁止ALE的输出可在SFR8EH地址上置0。表41P3口的第二功能TAB41THESECONDFEATUREIP3引脚第二功能信号名称P30P31P32P33P34P35P36P37RXDTXDINT0INT1T0T1WRRD串行数据接收串行数据发送外部中断0请求外部中断1请求定时器/计数器0计数输入定时器/计数器1计数输入外部RAM写选通外部RAM读选通P3口同时为闪烁编程和编程校验接收一些控制信号。此时,ALE只有在执行MOVX,
23、MOVC指令是ALE才起作用。另外,该引脚被略微拉高。如果微处理器在外部执行状态ALE禁止,置位无效。9/PSEN外部程序存储器的选通信号。在由外部程序存储器取指期间,每个机器周期两次/PSEN有效。但在访问外部数据存储器时,这两次有效的/PSEN信号将不出现。10/EA/VPP当/EA保持低电平时,则在此期间外部程序存储器(0000HFFFFH),不管是否有内部程序存储器。注意加密方式1时,/EA基于单片机的电机转速测量系统设计10将内部锁定为RESET;当/EA端保持高电平时,此间内部程序存储器。在FLASH编程期间,此引脚也用于施加12V编程电源(VPP)。11XTAL1反向振荡放大器的
24、输入及内部时钟工作电路的输入。12XTAL2来自反向振荡器的输出。振荡器特性XTAL1和XTAL2分别为反向放大器的输入和输出。该反向放大器可以配置为片内振荡器。石英振荡和陶瓷振荡均可采用。如采用外部时钟源驱动器件,XTAL2应不接。有余输入至内部时钟信号要通过一个二分频触发器,因此对外部时钟信号的脉宽无任何要求,但必须保证脉冲的高低电平要求的宽度。芯片擦除整个PEROM阵列和三个锁定位的电擦除可通过正确的控制信号组合,并保持ALE管脚处于低电平10MS来完成。在芯片擦操作中,代码阵列全被写“1”且在任何非空存储字节被重复编程以前,该操作必须被执行。此外,AT89C51设有稳态逻辑,可以在低到
25、零频率的条件下静态逻辑,支持两种软件可选的掉电模式。在闲置模式下,CPU停止工作。但RAM,定时器,计数器,串口和中断系统仍在工作。在掉电模式下,保存RAM的内容并且冻结振荡器,禁止所用其他芯片功能,直到下一个硬件复位为止。412时钟电路时钟电路是计算机的心脏,它控制着计算机的工作节奏。MCS51单片机允许的时钟频率是因型号而异的典型值为12MHZMCS51内部都有一个反相放大器,XTAL1、XTAL2分别为反相放大器输入和输出端,外接定时反馈元件以后就组成振荡器,产生时钟送至单片机内部的各个部件。AT89C51是属于CMOS8位微处理器,它的时钟电路在结构上有别于NMOS型的单片机。基于单片
26、机的电机转速测量系统设计11CMOS型单片机内部(如AT89C51)有一个可控的负反馈反相放大器,外接晶振(或陶瓷谐振器)和电容组成振荡器,图42为CMOS型单片机时钟电路框图。振荡器工作受/PD端控制,由软件置“1”PD(即特殊功能寄存器PCON1)使/PD0,振荡器停止工作,整个单片机也就停止工作,以达到节电目的。清“0”PD,使振荡器工作产生时钟,单片机便正常运行。图中SYS为晶振或陶瓷谐振器,振荡器产生的时钟频率主要由SYS参数确定(晶振上标明的频率)。电容C1和C2的作用有两个其一是使振荡器起振,其二是对振荡器的频率F起微调作用(C1、C2大,F变小),其典型值为30PF。图42CM
27、OS型单片机时钟电路框图413复位电路计算机在启动运行时都需要复位,使中央处理器CPU和系统中的其它部件都处于一个确定的初始状态,并从这个状态开始工作。MCS51单片机有一个复位引脚RST,它是史密特触发输入对于CHMOS单片机,RST引脚的内部有一个拉低电阻,当振荡器起振后该引脚上出现2个机器周期即24个时钟周期以上的高电平,使器件复位,只要RST保持高电平,MCS51保持复位状态。此时ALE、PSEN、P0、P1、P2、P3口都输出高电平。RST变为低电平后,退出复位,CPU从初始状态开始工作。单片机采用的复位方式是自动复位方式。对于MOSAT89C51单片机只基于单片机的电机转速测量系统
28、设计12要接一个电容至VCC即可见图43。在加电瞬间,电容通过电阻充电,就在RST端出现一定时间的高电平,只要高电平时间足够长,就可以使MCS51有效的复位。RST端在加电时应保持的高电平时间包括VCC的上升时间和振荡器起振的时间,VSS上升时间若为10MS,振荡器起振的时间和频率有关。10MHZ时约为1MS,1MHZ时约为10MS,所以一般为了可靠的复位,RST在上电应保持20MS以上的高电平。RC时间常数越大,上电RST端保持高电平的时间越长。若复位电路失效,加电后CPU从一个随机的状态开始工作,系统就不能正常运转。图43上电复位电路414显示电路显示电路采用LED数码管动态显示,LED(
29、LIGHTEMITTINGDIODE)是一种外加电压从而渡过电流并发出可见光的器件。LED是属于电流控制器件,使用时必须加限流电阻。LED有单个LED和八段LED之分,也有共阴和共阳两种。显示器结构常用的七段显示器的结构如图44所示。发光二极管的阳极连在一起的称为共阳极显示器,阴极连在一起的称为共阴极显示器。1位显示器由八个发光二极管组成,其中七个发光二极管AG控制七个笔画(段)的亮或暗,另一个控制一个小数点的亮和暗,这种笔画式的七段显示器能显示的字符较少,字符的开头有些失真,但控制简单,使用方便。基于单片机的电机转速测量系统设计13此外,要画出电路图,首先还要搞清楚他的引脚图的分布,在了解了
30、正确的引脚图后才能进行正确的字型段码编码。才能显示出正确的数字来,如图45所示,为七段数码管的管脚图。图44七段发光显示器的结构图45七段发光显示器管脚的结构驱动方式采用的数码管驱动为7407,它的全名为7407TTL集电极开路六正相高压驱动器,其结构简单,使用方便,图46为7407的图以及各个引脚的分布功能介绍。基于单片机的电机转速测量系统设计14图467407管脚的结构显示方式为了节省I/O口线,我们采用的动态显示方式。所谓动态显示,就一位一位地轮流点亮各位显示器(扫描),对于每一位显示器来说,每隔一段时间点亮一次。显示器的亮度既与导通电流有关,也与点亮时间和间隔时间的比例有关。调整电流和
31、时间参数,可实现亮度较高较稳定的显示。若显示器的位数不大于8位,则控制显示器公共极电位只需8位口(称为扫描口),控制各位显示器所显示的字形也需一个8位口(称为段数据口)。本次设计要求的转速测量范围60R/MIN36000R/MIN,所以只需要5位数码管即可。5位共阴极显示器和AT89C51的接口逻辑如图47所示。AT89C51的P0口作为段数据口,接上拉电阻到显示器的各个段;P2口作为扫描口,经同相驱动器7407接显示器公共极。对于图47中的5位显示器,在AT89C51RAM存贮器中设置五个显示缓冲器单元30H35H,分别存放5位显示器的显示数据,AT89C51的P2基于单片机的电机转速测量系
32、统设计151234ABCD4321DCBATITLENUMBERREVISIONSIZEADATE7OCT2013SHEETOFFILED毕业论文基于单片机的电动机转速测量系统电路DDBDRAWNBYP101P112P123P134P145P156P167P178P0039P0138P0237P0336P0435P0534P0633P0732P2021P2122P2223P2324P2425P2526P2627P2728RST/VPD9P30/RXD10P31/TXD11P32/INT012P33/INT113P34/T014P35/T115P36/WR16P37/RD17XTAL218XTA
33、L119GND20PSEN29ALE/P30EA/VPP31VCC40U1AT89C51Y112MC130PFC230PFXT1XT2R8220R910KC310UFS1VCCRST晶振、复位电路RSTXT1XT2R111KR121KR131KR141KVCCP20P21P22P23P00P01P02P03P04P05P06转速显示电路VCCP00P01P02P03P04P05P06P20P21P22P23VCCD1LEDR10360Q1PNPQ2PNPQ3PNPQ4PNP123J1CON3VCCOUTP33P32P33红外发射和接收R11KR21KR31KR41KR51KR61KR71K11
34、7421105ABCDEFG3DP12GNDABFCGDEDP9GNDABFCGDEDP8GNDABFCGDEDP6GNDABFCGDEDPU2RES2整形电路12U3A74LS14OUTP3234U3B74LS14单片机外围接口电路基于单片机的转速测量口扫描输出总是只在一位为低电平,即5位显示器中仅有一位公共阴极为低电平,其它位为高电平,AT89C51的P0口相应位(阴极为低)的显示数据的段数据,使该位显示出一个字符,其它们为暗,依次地改变P2口输出为高的位,P0口输出对应的段数据,5位显示器就显示出由缓冲器中显示数据所确定的字符。图47五位动态显示电路42霍尔传感器简介421霍尔器件概述霍
35、尔元件是一种基于霍尔效应的磁传感器,已发展成一个品种多样的基于单片机的电机转速测量系统设计16磁传感器产品族,并已得到广泛应用。霍尔元件是一种磁传感器。要他们可以检测磁场及其变化,可以在各种与磁场有关的场合中。霍尔器件以霍尔效应为其工作基础。霍尔期间具有许多优点,他们的结构牢固,体积小,重量轻,寿命长,安装方便,功耗小,频率高(可达1MHZ),耐震动,不怕灰尘、水汽及烟雾等污染或腐蚀。霍尔线性器件的精度高、线性度好;霍尔开关器件无触点、无磨损、输出波形清晰、无抖动、无回调、位置重复精度高(可达UM级)。采用了各种补偿措施的霍尔器件的工作温度范围广,可达55150度。按照霍尔器件的功能可将他们分
36、为霍尔线性器件和霍尔开关器件。前者输出模拟量,后者输出数字量。按被检测的对象的性质可将它们分为直接应用和间接应用。前者是直接检测出被测对象本身的磁场或磁特性,后者是检测被检测对象上人为设置的磁场,用这个磁场作为被检测信息的载体,通过它,将许多非电、非磁的物理量例如力、力矩、压力、应力、位置、位移、加速度、角度、角速度、转速、转数以及工作状态发生变化的时间等,转换成电量来进行检测和控制。集成霍尔传感器是利用硅集成电路工艺将霍尔元件和测量线路集成在一起的一种传感器。它取消了传感器和测量电路之间的界限,实现了材料、元件、电路三位一体。集成霍尔传感器与分立相比,由于减少了焊点,因此显著地提高了可靠性。
37、此外,它具有体积小、重量轻、功耗低等优点,正越来越爱到众的重视。集成霍尔传感器的输出是经过处理的霍尔输出信号。按照输出信号的形式,可以分为开关型集成霍尔传感器和线性集成霍尔传感器两种类型。开关型集成霍尔传感器是把霍尔元件的输出经过处理后输出一个高电平或低电平的数字信号。霍尔开关电路又称霍尔数字电路,由稳压器、霍尔片、差分放大器,斯密特触发器和输出级组成。基于单片机的电机转速测量系统设计17422霍尔传感器的应用使用霍尔器件检测磁场的方法极为简单,将霍尔器件做成各种形式的探头,放在被测磁场中,因霍尔器件只对垂直于霍尔片表面的磁感应强度敏感,因而必须令磁力线和器件表面垂直,通电后即可由输出电压得到
38、被测磁场的磁感应强度。若不垂直,则应求出其垂直分量来计算被测磁场的磁感应强度值。而且,因霍尔元件的尺寸极小,可以进行多点检测,由计算机进行数据处理,可以得到场的分布状态,并可对狭缝,小孔中的磁场进行检测用磁场作为被传感物体的运动和位置信息载体时,一般采用永久磁钢来产生工作磁场。例如,用一个5425(MM3)的钕铁硼号磁钢,就可在它的磁极表面上得到约2300高斯的磁感应强度。在空气隙中,磁感应强度会随距离增加而迅速下降。为保证霍尔器件,尤其是霍尔开关器件的可靠工作,在应用中要考虑有效工作气隙的长度。在计算总有效工作气隙时,应从霍尔片表面算起。在封装好的霍尔电路中,霍尔片的深度在产品手册中会给出。
39、因为霍尔器件需要工作电源,在作运动或位置传感时,一般令磁体随被检测物体运动,将霍尔器件固定在工作系统的适当位置,用它去检测工作磁场,再从检测结果中提取被检信息。423AH41霍尔开关AH41霍尔开关电路最适于响应变化斜率陡峭的磁场并在磁通密度较弱的场合使用,适用于单极或多对磁环工作,它由反向电压保护器、电压调整器、霍尔电压发生器、信号放大器、史密特触发器和集电极开路的输出级组成。工作温度范围为40150(存储温度为150),可适用于各种机及机电一体化领域。电参数参数符号测试条件量值单位最小典型最大电源电压VCC4524V输出低电平电压VOUTIOUT20MABBOP200400MV输出高电平电
40、流IOFFVOUT24VB电源电流ICCVCC24V基于单片机的电机转速测量系统设计18输出端开路10MA输出上升时间TRVCC12VRL11KCL20PF012S输出下降时间TFVCC12VRL11KCL20PF018S产品特点电源电压范围宽可用市售的小磁环来驱动无可动部件、可靠性高尺寸小抗环境应力可直接同双极和MOS逻辑电路接口应用高灵敏的无触点开关直流无刷电机直流无刷风机霍尔开关元件的电路图图48霍尔传感器的电路图43发送模块根据系统功能要求,要使单片机测量的转速能够向上位机发送数据,硬件电路中必须要考虑到单片机的发送部分,由于单片机通过串口发送出基于单片机的电机转速测量系统设计19来的
41、是TTL逻辑电平(0V和5V),而计算机RS232总线上输入、输出数据和控制信号为12V左右的电压,单片机要和PC的上位机通信就必须是电平一致,所以发送部分关键的部分是电平转换和串口发送,电平转换可以用模拟器件进行转换,但是为了方便起见,本次设计采用的是集成芯片,一个芯片加上它的外围电路即可完成电平的转换的工作。结构简单、方便容易,精确度高。本次所采用的是HIN232CP,我们要对其外围电路进行设计,下面我们将详细的叙述。数据的传输当电路工作于发送数据状态时,PC机的RTS端输出高电平,经IC1电平转换打开IC3(74LS08)的与门B1,使PC机TXD端输出的数据经红外发射电路发射出去;RT
42、S信号IC1反相后作为CTS信号送入计算机,同时还关闭与门B2;使计算机不接收其它数据信号。该必发器的数据传输速率最好设在9600B/S为宜,以确保数据传输的可靠性。器件的介绍1、RS232CRS232C是美国电气工业协会推广使用的一种串行通信总路线标准,是DCE数据通信设备,如微机和DTE数据终端设备,如CRT间传输串行数据的接口总线。RS232C最大传输距离为15M,最高传输速率约20KBPS,信号的逻辑0电平为3V15V。逻辑1电平为3V15V。电气特性EIARS232C对电器特性、逻辑电平和各种信号线功能都作了规定;在TXD和RXD上逻辑1MARK3V15V逻辑0SPACE315V在R
43、TS、CTS、DSR、DTR和DCD等控制线上信号有效(接通,ON状态,正电压)3V15V基于单片机的电机转速测量系统设计20信号无效(断开,OFF状态,负电压)3V15V2、RS232连接器DB9DB9是RS232信号线的连接器,其连接器的机械特性见图49,表41所示RS232信号线名称、符号以及对应在DB9上的针脚号。图49连接器的机械特性表41RS232信号线和DB9引脚关系TAB41RS232SIGNALLINESANDDB9PINRELATIONS符号名称引脚DCDRXDTXDDTRGNDDSRRTSCTSRI接收信号载波检测数据接收线数据发送线DTE装置数据就绪公共地DCE装置就绪
44、请求发送清除发送振铃指示123456789基于单片机的电机转速测量系统设计21图410电平转换电路原理图3、电平转换器HIN232CPE由于RS232C总线上传输的信号逻辑电平与TTL逻辑电平差异很大,所以就存在这两种电平的转换问题,下面就介绍一下电平转换器HIN232CPE。HIN232CPE能将RS232C电平转换成TTL电平,也能将TTL电平转换成RS232C电平,只需单5V供电,由内部升高电路产生10V12V。内部有两个发送器TTL电平转换为RS232C电平和两个接收器RS232电平转换为TTL电平。HIN232CPE芯片引脚排列和外部元件连接线路如图411所示。基于单片机的电机转速测
45、量系统设计22图411HIN232CPE电平转换器及外接元件图5软件设计本章重点阐述测量转速的汇编语言。以及软件设计的过程。软件需要解决的是单片机中断服务程序的设计、计算程序的设计、显示部分的程序设计以及在我们这里非重点介绍的通信程序设计。基于单片机的电机转速测量系统设计2351单片机转速程序设计思路及过程单片机测量转速可以分为若干模块,然后在主程序中调用各个模块,流程图如下图所示。图51主程序流程图511单片机程序设计思路计算转速公式N60/NTCR/MIN其中,N是内部定时器的计数值,为三字节,分别由TH0,TL0,VTT构成;TC为时基,由于采用110592M的晶振,所以TC不在是1UM
46、,而是12M/110592M约为108UM,带入上面公式,即可得到转速的精确计算公式N6011059200/12N55296000/N开始初始化计算程序BCD码转换非压缩BCD转换显示程序返回基于单片机的电机转速测量系统设计24再将55296000化为二进制存入单片机的内存单元。下面我们将介绍除数是如何获得的单片机的转速测量完成,定时器T0作为内部定时器,外部中断来的时候读取TH0,TL0,并同时清零TH0、TL0,使定时器再次循环计内部脉冲。此外,对于低速情况下,我们还要设定一个软件计数器VTT,当外部中断还没来而内部定时器已经溢出,产生定时器0中断时,增加VTT,作为三字节中的高字节。三字
47、节组成除数,上面的常数为四字节,所以计算程序实际上就是调用一个四字节除三字节商为两字节(最高转速36000R/MIN足够)的程序。为数码管能够显示出来,需将二进制转换为十进制,在将十进制转换为非压缩BCD码后,才能调用查表程序,最后送显示。512单片机转速计算程序由于本次设计的系统要实现的功能是将霍尔传感器的信号送到单片机的外部中断口,再对周期方波进行内部计数,调用计算程序把转速测出来。可以说是核心部分,流程图如图所示被除数初始化开始基于单片机的电机转速测量系统设计25图52计算程序流程图计算程序中又再次调用了除法程序,这里的除法为四字节除三字节商为两字节,除法的程序的编程思想可以和手工计算的
48、除法相似,比较减法的思想,流程图如图53所示具体程序见附录。513二十进制转换程序计算程序计算出来的数据为二进制,存到50H、51H单元中以便发送程序中调用传送数据到计算机,计算机可识别二进制,然而,我们需要在LED上显示,查表程序需要拆分的BCD码,所以二进制必须先转换成BCD后才能拆分。这里介绍将(R2R3)中的16位二进制数转换为压缩BCD码十进制整数送R4、R5、R6。读取定时值调用除法程序返回除法基于单片机的电机转速测量系统设计26YN图53除法程序流程图按照数制转换方法可以画出流程图。移位次数计数器被除数左移1位被除数除数上商1,减去除数上商0计数器减1计数器0返回开始基于单片机的
49、电机转速测量系统设计27图54双字节整数二翻十程序流程图单片机显示部分可以用来显示计算出来的数据的。在程序设计中,在AT89C51RAM存贮器中的四个显示缓冲器单元30H34H,分别存放着由计算出来的转速的BCD码进行拆分后的非压缩BCD码数据,AT89C51的P1口扫描输出总是只有一位为低电平、其它位为高电平,AT89C51的P0口相应位的显示数据的段数据,使该位显示出一个字符,其它们为暗,依次地改变P1口输出为低高的位,P0口输出对应的段数据,5位LED显示器就显示出由缓冲器中显示数据所确定的字符。显示部分程序分为两部分十进制BCD转换成非压缩BCD码;查表程序显示数据。0R4、R5、R616R72(R4R5R6)CR4R5R6(十进制运算)返回基于单片机的电机转速测量系统设计28双字节整数拆分程序流程图如图55图55双字节整数拆分程序流程图显示程序流程图如图56所示52程序设计根据以上设计思路和各个模块的流程图即可编写出本次毕业设计的程序,注意其中各个模块间的参数传递以及堆栈指针等问题,程序设计的任务即可完成,写出初始的程序,再进行上机调试,这些我们将具体在下章中加以详细叙述。开始高字节R4送30HR5与0F0H相与交换后送31HR5与0FH相与后送32HR6与0F0H相与交换后送33HR
Copyright © 2018-2021 Wenke99.com All rights reserved
工信部备案号:浙ICP备20026746号-2
公安局备案号:浙公网安备33038302330469号
本站为C2C交文档易平台,即用户上传的文档直接卖给下载用户,本站只是网络服务中间平台,所有原创文档下载所得归上传人所有,若您发现上传作品侵犯了您的权利,请立刻联系网站客服并提供证据,平台将在3个工作日内予以改正。