




免费预览已结束,剩余25页可下载查看
下载本文档
版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领
文档简介
基于霍尔传感器的电机转速测量系统摘要 在生产过程中,电机的应用十分广泛,随着生产的不断发展,对电机转速的测量就显得十分必要,同时对电机转速的测量提出了更高的要求。确定电机在正常转速下运行也是生产安全的必要因素之一。本设计设计了一种以51单片机作为主控制器,使用霍尔传感器进行测量的直流电机转速测量系统。本系统采用集成霍尔传感器敏感速率信号,具有频率响应快,抗干扰能力强等特点。文章介绍了霍尔传感器的工作原理,阐述了霍尔传感器测速系统的工作过程,利用脉冲计数法实现了对转速的测量,通过LCD直观地显示电机的转速值。结合硬件电路设计,采用模块化方法进行了软件设计。编制了电机转速的测量设计了测量模块、转速模块、报警模块、显示模块等的C51程序,并通过PROTEUS软件进行了仿真。仿真结果表明所设计的软件程序是正确的。关键词:霍尔传感器;单片机;电机转速测量 ;液晶显示。(一)绪 论在实践中,经常会遇到各种需要测量转速的场合。例如在发动机、电动机、卷扬机、机床主轴等旋转设备的试验、运转和控制中,常需要测量和显示其转速。测量转速的方法分为模拟式和数字式两种。模拟式采用测速发电机为检测元件,得到的信号是模拟量。数字式通常采用光电编码器、圆光栅、霍尔元件等为检测元件,得到的信号是脉冲信号。随着微型计算机的广泛应用,特别是高性能价格比的单片机的出现,转速测量普遍采用以单片机为核心的数字式测量方法,智能化微电脑代替了一般机械式或模拟式结构。1.1 立题的目的和意义霍尔传感器是利用霍尔效应实现磁电转换的一种传感器,它具有灵敏度高、线性度好、稳定性高、体积小和耐高温等特点,在机车控制系统中占有非常重要的地位。测速装置在控制系统中占有非常重要的地位,对测速装置的要求是分辨能力强、高精度和尽可能短的检测时间。在此主要介绍应用霍尔传感器通过测量磁场强度,来得到稳定的脉冲方波信号,实现电机转速的测量转速是电动机极为重要的一个状态参数,在很多运动系统的测控中,都需要对电机的转速进行测量,速度测量的精度直接影响系统的控制情况,它是关系测控效果的一个重要因素。不论是直流调速系统还是交流调速系统,只有转速的高精度检测才能得到高精度的控制系统。1.2 应用与发展前景随着微型计算机可靠性提高和价格的下降,用单片机测量电机转速已日趋普遍。我们知道,欲提高测量精度,必须先测出准确的转速,而原先在可控硅调速电路中采用的测速发电机方式已不能满足要求,必须采用数字测速的方法2。转速的测量方法很多,根据脉冲计数来实现转速测量的方法主要有M法(测频法)、T法(测周期法)和MPT法(频率周期法),该系统采用了M法(测频法)。转速检测方式采用霍尔脉冲法测量转速有两种简单的方式。本文采用频率法,检测的是输入脉冲数,这种方式又称频率法。它测出一定时间内输入的脉冲的个数。在控制系统中占有非常重要的地位。对测速装置的要求是分辨能力强、高精度和尽可能短的检测时间。所设计的基于霍尔元件的脉冲发生器要求成本低,构造简单,性能好。在电气控制系统中存在着较为恶劣的电磁环境,因此要求产品本身要具有较强的抗干扰能力。由于需要采用霍尔传感器的应用领域,如汽车、电机、手机和电脑都已经采用了该器件,而且这些市场在未来几年的增长较为稳定,而其他一些新的应用市场又不足以与上述几个市场相比,因此霍尔传感器在全球总的市场容量是较为稳定的,每年的增长率保持在5%到10%之间。因为各种应用电机的部件、节气门位置的检测、各种阀体位置的检测都会用到霍尔传感器。而且,在中国市场中,国外厂商为了降低成本,陆续将零部件拿到中国进行设计和生产,这也进一步提升了中国市场霍尔传感器的应用量。随着它在消费电子市场上的应用越来越广,如何控制功耗和成本将是厂商面临的挑战。而且,它还面临生产测试技术方面的挑战。1.3 设计要求首先选定传感器,霍尔传感器具有灵敏、可靠、体积小巧、无触点、无磨损、使用寿命长、功耗低等优点,综合了电机转速测量系统的要求。其次设计一个单片机小系统,掌握单片机接口电路的设计技巧,学会利用单片机的定时器和中断系统对脉冲信号进行测量或计数。再次实时测量显示并有报警功能,实时测量根据脉冲计数来实现转速测量的方法。要求霍尔传感器转速为05000r/min。2.1 总体硬件设计基于霍尔传感器的速度测量系统工作过程是:测量转速的霍尔传感器和机轴同轴连接,机轴每转一周,产生一定量的脉冲个数,由霍尔器件电路部分输出。经光电耦合后,成为转速计数器的计数脉冲。同时传感器电路输出幅度为12v的脉冲经光电耦合后降为5v,保持同89C51逻辑电平相一致。控制计数时间,即可实现计数器的计数值对应机轴的转速值。CPU将该值数据处理后,在LCD上显示出来。一旦超速,CPU通过指示灯发出光报警信号。2.1.1 硬件原理图以单片机AT89C5l为控制核心,用霍尔集成传感器作为测量转速的检测元件,最后用字符型液晶显示器1602(HD44780控制)显示的小型直流电动机转速的方法,是数字式测量方法,智能化微电脑代替了传统的机械式或模拟式结构。系统硬件原理图如图2-1所示。 硬件原理图2.2 系统子模块简介本文介绍一种用AT89C51单片机测量小型电动机转速的方法。系统以单片机AT89C5l为控制核心.用霍尔集成传感器作为测量小型直流电机转速的检测元件,经过单片机数据处理,用字符型液晶显示器1602显示小型直流电机的转速。另外系统还可完成对电机的开关控制、系统工作时间、当前时间及电机状态的显示。单片机转速测量系统。组成单片机转速测量系统的有传感器、处理器、计数器和显示器四个部分组成。AT89C51 简介:AT89C51(如图所示)是一种带4K字节闪烁可编程可擦除只读存储器(FPEROMFalsh Programmable and Erasable Read Only Memory)的低电压,高性能CMOS8位微处理器,俗称单片机。该器件采用ATMEL高密度非易失存储器制造技术制造,与工业标准的MCS-51指令集和输出管脚相兼容。由于将多功能8位CPU和闪烁存储器组合在单个芯片中,ATMEL的AT89S51 AT89C51单片机示意图(4-2-1)AT89C51单片机示意图是一种高效微控制器,为很多嵌入式控制系统提供了一种灵活性高且价廉的方案。VCC:供电电压。GND:接地。P0口:P0口为一个8位漏级开路双向I/O口,每脚可吸收8TTL门电流。当P1口的管脚第一次写1时,被定义为高阻输入。P0能够用于外部程序数据存储器,它可以被定义为数据/地址的第八位。在FIASH编程时,P0 口作为原码输入口,当FIASH进行校验时,P0输出原码,此时P0外部必须被拉高。P1口:P1口是一个内部提供上拉电阻的8位双向I/O口,P1口缓冲器能接收输出4TTL门电流。P1口管脚写入1后,被内部上拉为高,可用作输入,P1口被外部下拉为低电平时,将输出电流,这是由于内部上拉的缘故。在FLASH编程和校验时,P1口作为第八位地址接收。P2口:P2口为一个内部上拉电阻的8位双向I/O口,P2口缓冲器可接收,输出4个TTL门电流,当P2口被写“1”时,其管脚被内部上拉电阻拉高,且作为输入。并因此作为输入时,P2口的管脚被外部拉低,将输出电流。这是由于内部上拉的缘故。P2口当用于外部程序存储器或16位地址外部数据存储器进行存取时,P2口输出地址的高八位。在给出地址“1”时,它利用内部上拉优势,当对外部八位地址数据存储器进行读写时,P2口输出其特殊功能寄存器的内容。P2口在FLASH编程和校验时接收高八位地址信号和控制信号。P3口:P3口管脚是8个带内部上拉电阻的双向I/O口,可接收输出4个TTL门电流。当P3口写入“1”后,它们被内部上拉为高电平,并用作输入。作为输入,由于外部下拉为低电平,P3口将输出电流(ILL)这是由于上拉的缘故。RST:复位输入。当振荡器复位器件时,要保持RST脚两个机器周期的高电平时当8051通电,时钟电路开始工作,在RESET引脚上出现24个时钟周期以上的高电平,系统即初始复位。初始化后,程序计数器PC指向0000H,P0-P3输出口全部为高电平,堆栈指钟写入07H,其它专用寄存器被清“0”。RESET由高电平下降为低电平后,系统即从0000H地址开始执行程序。然而,初始复位不改变RAM(包括工作寄存器R0-R7)的状态, 特殊功能寄存器 初始态 特殊功能寄存器 初始态 ACC 00H B 00H PSW 00H SP 07H DPH 00H TH0 00H DPL 00H TL0 00H IP xxx00000B TH1 00H IE 0xx00000B TL1 00H TMOD 00H TCON 00H SCON XxxxxxxxBSBUF 00H P0-P3 1111111B PCON 0xxxxxxxB 8051的初始态(4-2-2)ALE/PROG:当访问外部存储器时,地址锁存允许的输出电平用于锁存地址的地位字节。在FLASH编程期间,此引脚用于输入编程脉冲。在平时,ALE端以不变的频率周期输出正脉冲信号,此频率为振荡器频率的1/6。因此它可用作对外部输出的脉冲或用于定时目的。然而要注意的是:每当用作外部数据存储器时,将跳过一个ALE脉冲。如想禁止ALE的输出可在SFR8EH地址上置0。此时, ALE只有在执行MOVX,MOVC指令是ALE才起作用。另外,该引脚被略微拉高。如果微处理器在外部执行状态ALE禁止,置位无效。PSEN:外部程序存储器的选通信号。在由外部程序存储器取指期间,每个机器周期两次/PSEN有效。但在访问外部数据存储器时,这两次有效的/PSEN信号将不出现。EA/VPP:当/EA保持低电平时,则在此期间外部程序存储器(0000H-FFFFH),不管是否有内部程序存储器。注意加密方式1时,/EA将内部锁定为RESET;当/EA端保持高电平时,此间内部程序存储器。在FLASH编程期间,此引脚也用于施加12V编程电源(VPP)。XTAL1:反向振荡放大器的输入及内部时钟工作电路的输入。XTAL2:来自反向振荡器的输出。振荡器特性:XTAL1和XTAL2分别为反向放大器的输入和输出。该反向放大器可以配置为片内振荡器。石晶振荡和陶瓷振荡均可采用。如采用外部时钟源驱动器件,XTAL2应不接。有余输入至内部时钟信号要通过一个二分频触发器,因此对外部时钟信号的脉宽无任何要求,但必须保证脉冲的高低电平要求的宽度。芯片擦除:整个PEROM阵列和三个锁定位的电擦除可通过正确的控制信号组合,并保持ALE管脚处于低电平10ms 来完成。在芯片擦操作中,代码阵列全被写“1”且在任何非空存储字节被重复编程以前,该操作必须被执行。此外,AT89S51设有稳态逻辑,可以在低到零频率的条件下静态逻辑,支持两种软件可选的掉电模式。在闲置模式下,CPU停止工作。但RAM,定时器,计数器,串口和中断系统仍在工作。在掉电模式下,保存RAM的内容并且冻结振荡器,禁止所用其他芯片功能,直到下一个硬件复位为止。2.2.1 传感器部分主要分为两个部分。第一部分是利用霍尔器件将电机转速转化为脉冲信号;第二个部分是使用光耦,将传感器输出的信号和单片机的计数电路两个部分隔开,减少计数的干扰。用于测量的A44E集成霍尔开关,磁钢用直径D=6.004mm,长度为L=3.032mm的钕铁硼磁钢。电源用直流,霍尔开关输出由四位半直流数字电压表测量,磁感应强度B用95A型集成霍尔元件测量9。霍尔片管脚 管脚接线2.2.2 计数器片内计数方案是指采用单片机的内部计数器完成对脉冲的计数过程。2.2.3 处理器处理器是单片机,采用的是89C51单片机。LCD液晶显示器简介显示器是人与机器沟通的重要界面,早期以显像管(CRT/Cathode Ray Tube)显示器为主,但随着科技不断进步,各种显示技术如雨后春笋般诞生,近来由于液晶(LCD)显示器具有轻薄短小、耗电量低、无辐射危险,平面直角显示以及影像稳定不闪烁等优势,在近年来价格不断下跌的吸引下,逐渐取代CRT之主流地位,显示器明日之星架势十足。液晶是一种既具有液体的流动性又具有光学特性的有机化合物,它的透明程度和呈现的颜色受外加电场的影响,利用这特点便可做成字符显示器。液晶显示器(LCD)英文全称为Liquid Crystal Display,它一种是采用了液晶控制透光度技术来实现色彩的显示器。和CRT显示器相比,LCD的优点是很明显的。由于通过控制是否透光来控制亮和暗,当色彩不变时,液晶也保持不变,这样就无须考虑刷新率的问题。显示接口用来显示系统的状态,命令或采集的电压数据。本系统显示部分用的是LCD液晶模块,采用一个161的字符型液晶显示模块。 点阵图形式液晶由 M 行N 列个显示单元组成,假设 LCD 显示屏有64行,每行有 128列,每 8列对应 1 个字节的 8 个位,即每行由 16 字节,共 168=128个点组成,屏上 6416 个显示单元和显示 RAM 区 1024 个字节相对应,每一字节的内容和屏上相应位置的亮暗对应。一个字符由 68 或 88点阵组成,即要找到和屏上某几个位置对应的显示 RAM区的 8 个字节,并且要使每个字节的不同的位为1,其它的为0,为1的点亮,为0的点暗,这样一来就组成某个字符。但对于内带字符发生器的控制器来说,显示字符就比较简单了,可让控制器工作在文本方式,根据在LCD 上开始显示的行列号及每行的列数找出显示 RAM对应的地址,设立光标,在此送上该字符对应的代码即可。液晶模块简介LM016L的结构及功能:LM016L液晶模块采用HD44780控制器,hd44780具有简单而功能较强的指令集,可以实现字符移动,闪烁等功能,LM016L与单片机MCU通讯可采用8位或4位并行传输两种方式,hd44780控制器由两个8位寄存器,指令寄存器(IR)和数据寄存器(DR)忙标志(BF),显示数RAM(DDRAM),字符发生器ROMA(CGOROM)字符发生器RAM(CGRAM),地址计数器RAM(AC)。IR用于寄存指令码,只能写入不能读出,DR用于寄存数据,数据由内部操作自动写入DDRAM和CGRAM,或者暂存从DDRAM和CGRAM读出的数据,BF为1时,液晶模块处于内部模式,不响应外部操作指令和接受数据,DDTAM用来存储显示的字符,能存储80个字符码,CGROM由8位字符码生成5*7点阵字符160中和5*10点阵字符32种.8位字符编码和字符的对应关系,可以查看参考文献(30)中的表4.CGRAM是为用户编写特殊字符留用的,它的容量仅64字节,可以自定义8个5*7点阵字符或者4个5*10点阵字符,AC可以存储DDRAM和CGRAM的地址,如果地址码随指令写入IR,则IR自动把地址码装入AC,同时选择DDRAM或CGRAM但愿,LM016L液晶模块的引脚图如图4-3所示。LM016L引脚图 LM016L引脚介绍:Vss(1脚):一般接地。Vdd(2脚):接电源。Vee(3脚):液晶显示器对比度调整端,接电源时对比度最弱,接地时对比度最高(对比度过高时会产生“鬼影”,使用时可以通过一个10K的电位器调整对比度)。RS(4脚):RS为寄存器选择,高电平1时选择数据寄存器、低电平0时选择指令寄存器。R/W(5脚):R/W为读写信号线,高电平(1)时进行读操作,低电平(0)时进行写操作。E(6脚):E(或EN)端为使能(enable)端,下降沿使能。DB0(7脚):底4位三态、 双向数据总线 0位(最低位)。DB1(8脚):底4位三态、 双向数据总线 1位。DB2(9脚):底4位三态、 双向数据总线 2位。DB3(10脚):底4位三态、 双向数据总线 3位。DB4(11脚):高4位三态、 双向数据总线 4位。DB5(12脚):高4位三态、 双向数据总线 5位。DB6(13脚):高4位三态、 双向数据总线 6位。DB7(14脚):高4位三态、 双向数据总线 7位(最高位)(也是busy flang)。寄存器选择控制如表4-1。寄存器选择控制如下表RSR/W操作说明00写入指令寄存器(清除屏等)01读busy flag(DB7),以及读取位址计数器(DB0DB6)值10写入数据寄存器(显示各字型等)11从数据寄存器读取数据液晶显示部分与89C51的接口 如图4-4所示。用89C51的P2口作为数据线,用P3.2、P3.1、P3.0分别作为LCD的E、R/W、RS。其中E是下降沿触发的片选信号,R/W是读写信号,RS是寄存器选择信号本模块设计要点如下:显示模块初始化:首先清屏,再设置接口数据位为8位,显示行数为1行,字型为57点阵,然后设置为整体显示,取消光标和字体闪烁,最后设置为正向增量方式且不移位。向LCD的显示缓冲区中送字符,程序中采用2个字符数组,一个显示字符,另一个显示电压数据,要显示的字符或数据被送到相应的数组中,完成后再统一显示.首先取一个要显示的字符或数据送到LCD的显示缓冲区,程序延时2.5ms,判断是否够显示的个数,不够则地址加一取下一个要显示的字符或数据。液晶与89C51的接口 硬件电路设计总图理图基础上对各部分进行了详细的设计,硬件电路图如图所示。 硬件电路图(三)软件设计3.1 程序设计步骤第一步分析问题,明确任务要求,对于复杂的问题,还要讲要解决的问题抽象成数学模型,即用数学表达式来描述。第二步确定算法,即根据实际问题和指令系统的特点确定完成这一任务须经历的步骤。第三步根据所选择的算法,确定内存单元的分配:使用那些寄存器:程序运行中的中间数据及结果存放在那些单元,以利于提高程序的效率和运行速度:然后制定出解决问题的步骤和顺序,画出程序的流程图。第四步根据流程图,编写源程序。第五步上机对原程序进行编译、调试。3.2 程序流程图电机转速测量需要经过的4个基本步骤:1是控制方式;2是确定计数方式;3是信号输入方式;4是计数值的读取;通过89C51,单片机完成对电机转速脉冲计数的控制,读取寄存器完成转速频率的确定。 而SGN电机脉冲信号连到引脚。计数次数为3次,将3次结果取平均,从而提高计数的稳定性和精确性。其测量过程是测量转速的霍尔传感器和电机机轴同轴连接,机轴每转一周,产生一定量的脉冲个数,由霍尔器件电路输出。经过电耦合器后,即经过隔离整形电路后,成为转数计数器的计数脉冲。同时霍尔传感器电路输出幅度为12V的脉冲经光电耦合后降为5V,保持同单片机AT89C51逻辑电平相一致,控制计数时间,即可实现计数器的计数值对应机轴的转速值。主CPU将该值数据处理后,在LCD液晶显示器上显示出来。本系统采用89C51中的中断对转速脉冲计数。定时器T0工作于定时方式,工作于方式1。每到1s读一次外部中断计数值,此值即为脉冲信号的频率,根据式(3-1)可计算出电机的转速。当直流电机通过传动部分带圆盘旋转时,霍尔传感器根据圆盘上得磁片获得一系列脉冲信号。这些脉冲信号通过单片机系统定时/计数器计数,定时器T0定时。定时器T0完成100次溢出中断的时间T除以测得的脉冲数m,经过单位换算,就可以算得直流电机旋转的速度。直流电机转速计算公式:n=60m/(N1TN)(rpm) (4-1)其中:n为直流电机转速,N为栅格数,N1为T0中断次数,m为在规定时间内测得的脉冲数,T为定时器T0定时溢出时间12。3.2.1 主程序流程图主程序工作过程如下。先进行初始化设置各定时器初值,然后判断是否启动系统进行测量。如果是,就启动系统运行。如果不是就等待启动。启动系统后,霍尔传感器检测脉冲到来后,启动外部中断,每来一个脉冲中断一次,记录脉冲个数。同时启动T0定时器工作,每1秒定时中断一次,读取记录的脉冲个数,即电机转速。连续采样三次,取平均值记为一次转速值。再进行数值的判断,若数值高于5000rpm则报警并返回初始化阶段,否则就进行正常速度液晶显示。图3-1主流程图3.2.2 中断服务流程图 在处于中断服务程序阶段,首先进行关中断设置。其次进行对位进行的脉冲个数计数的数值读取。再次对、T0进行赋初值并且进行关中断设置。最后进行中断返回。一、外部计数中断图3-2 外部中断流程图 二、定时器中断图3-3 T0中断流程图3.3 软件程序设计3.3.1 主程序设计主程序在对定时器、计数器、堆栈等进行初始化后即判断标志位是否为1,如果为1,说明要求对数据进行计算处理,首先将标志位清零,以保证下次能正常判断,然后进入数据处理程序,由于这里的闸门时间为1s,而显示要求为转/分,因此,要将测到的数据进行转换,转换的方法是将测得的数据乘以60,但由于转轴上安装有4只磁钢,每旋转一周可以得到4个脉冲,因此,要将测得的数据除以4,所以综合起来,将测得的数据乘以60/4=15即可得到每分钟的转速。计算得到的结果是二进制的整数,要将数据送往显示缓冲区需要将该数转化为BCD码。运算得到的是压缩BCD码,需要将其转换为非压缩BCD码,从标号CBCD开始的一段程序即作了这样的处理13。定时器T0用作4ms定时发生器,在定时中断程序中进行数码管的动态扫描,同时产生1s的闸门信号。1s闸门信号的产生是通过一个计数器Count,每次中断时间为4ms,每计250次即为1s,到了1s后,即清除计数器Count,然后关闭作为计数器用的INT0,读出TH0、TL0中的数值,分别送入SpCount和SpCount+1单元,将T0中的值清空,置标志位为1,要求主程序进行速度值的计算。这里还有一个细节,用作1s闸门信号产生的Count每次中断都会加1,而INT0却有一个周期是被关闭的,因此,计数值是251而不是250。系统采用外部晶振,系统时钟SYSCLK等于18432000,T0定时1ms,初始化时TH0=(-SY-SCLK1000)8;TL0=-(SYSCLK1000)。等待1s到,输出转速脉冲个数N,计算电机转速值。将1s内的转速值换算成1 min内的电机转速值,并在LCD上输出测量结果14。/*-主函数-*/void main()int_all();/全局初始化 while(1)disp_count();/数据处理if(zhuan5000) /转速警告warning=1;if(zhuan4999)warning=0;write_command(0x80);for (i=0;i5000)warning=1;if(zhuan4999)warning=0;3.3.5 转速程序的设计测速的方法决定了测速信号的硬件连接,测速实际上就是测频,因此,频率测量的一些原则同样适用于测速。 通常,可以用计数法、测脉宽法和等精度法来进行测试。所谓计数法,就是给定一个闸门时间,在闸门时间内计数输入的脉冲个数;测脉宽法是利用待测信号的脉宽来控制计数门,对一个高精度的高频计数信号进行计数。由于闸门与被测信号不能同步,因此,这两种方法都存在1误差的问题,第一种方法适用于信号频率高时使用,第二种方法则在信号频率低时使用。等精度法则对高、低频信号都有很好的适应性15。/*-数据处理-*/void disp_count()display9=(zhuan/1000+0); /转换转速的千位display10=(zhuan/100%10+0); /转换转速的百位display11=(zhuan/10%10+0); /转换转速的十位display12=(zhuan%10+0); /转换转速的十位3.3.6 软件程序基础知识准备针对AT89C51单片机,头文件AT89x51.h给出了特殊功能寄存器SFR所有端口的定义。其次,C语言编程基础:十六进制表示字节0x5a:二进制为01011010B;0x6E为01101110。如果将一个16位二进数赋给一个8位的字节变量,则自动截断为低8位而丢掉高8位。 TMOD=(TMOD&0xf0)|0x05;表示给变量TMOD的低四位赋值0x5,而不改变TMOD的高四位。While(1);表示无限执行该语句,即死循环。语句后的分号表示空循环体,也就是;在引脚输出方波编程方法:(比如P3.2引脚)#include/该头文档中有单片机内部资源的符号化定义,其中包含P3.2/void main(void)/void表示没有输入参数,也没有函数返值,这入单片机运行的复位入口/While(1)/非零表示真,如果为真则执行下面循环体的语句/P3_2=1;/给P3_2赋值1,引脚P3.2就能输出高电平VCC/P3_2=0;/给P3_2赋值0,引脚P3.2就能输出低电平GND/由于一直为真,所以不断输出高、低、高、低,从而形成方波/4.1应用keil软件进行程序调试软件的调试必须在开发系统的支持下进行。先分别调试通过各个模块程序,然后调试中断服务程序,最后调试主程序,将各部分连接进行调试。调试的范围可以由小到大,逐步增加,必要的中间信号可以先做设定。通常交叉使用单步运行,断点运行,连续运行等多种方式,每次执行完毕后,检查CPU执行现场,RAM的有关内容,I/O接口的状态等。发现一个问题,解决一个问题,直至全部通过。首先新建一个工程项目文件;其次为工程选择目标器件;再次为工程项目设置软硬件调试环境;并创建源程序文件并输入程序代码,及保存创建的源程序项目文件;最后把源程序文件添加到项目中17。4.2Proteus软件仿真在Proteus软件中画出原理图,向单片机中加入需要调试的程序的HEX文件,便可以进行调试了.用连续矩形脉冲替代霍尔传感器转化成的信号个数,通过调节频率来反映所接收的信号多少。仿真结果如下图: 1.转速小于5000时,不报警绿灯亮表示电机运行不超速 2.转速大于5000时,红灯亮,报警结 论本文给出了一种单片机实现电机转速的测量系统,克服了传统方法测量的不足,可以实现电机转速不同区段的精度测量。该速度测量系统具有测量速度快,测量精度高的优点,不但可应用于一般的机电控制过程中进行速度测量,而且可应用于其它要求转速精确测量系统中。主要通过学习了霍尔传感器、89C51单片机、LCD显示等知识,查阅了相关资料,实现了“基于霍尔传感器的电机转速测量系统设计”的基本要求。本系统实现了题目基本部分以及扩展部分的要求,可达到设计的基本条件要求。所设计的系统具有以下功能: 1对于设计采用89C51单片机作为测量转速的主CPU芯片,系统硬件设备结构简单合理,成本低,实时性好。2测速系统采用霍尔传感器作为敏感速率信号,具有频率响应快,抗干扰能力强等特点。霍尔传感器的输出信号经信号调理后,通过单片机对连续脉冲记数来实现转速测量,充分利用了单片机的内部资源,有很高的性价比。经过测试并对误差进行分析发现,该系统的测量误差在5%以内,并且在测量范围内转速越高测量精度越高。所以该系统在一般的转速检测和控制中均可应用。致 谢首先感谢我的导师张东阳老师!经过两周的忙碌和工作,本次课程设计已经接近尾声,通过这次设计,把自己所学的理论知识运用于实践,受益非浅。对单片机有了更深的认识,对我以后独自处理问题有了很大的帮助。在整个课程设计过程中,我的指导老师张东阳老师一直给予我们很多的关注和指导,勤勉教学,诲人不倦,帮助我们顺利的完成这次设计任务。附 录源程序:#include #include #define uint unsigned int#define uchar unsigned char/*-端口命名-*/sbit rs=P27;/LCD的数据/命令选择端sbit rw=P26;/LCD的读写选择端sbit lcdcs=P25;/LCD的使能信号端sbit warning=P31;/LED-RED端/*-*/*-定义参数-*/uint i,z,count,zhuan,msec;/定义参数uchar display= Thanks N= r/s; /定义显示参数/*-*/*-毫秒延时-*/void delay(uint ms)uint i,j;/为延时引入i,j两参数for (j=0;jms;j+)/延时第一循环for (i=0;i120;i+);/延时第二循环/*-*/*-向LCD1602写命令-*/void write_command(uchar command)rs=0;/选择写命令P0=command;/向LCD写命令lcdcs=1;/信号使能端高电平lcdcs=0;/信号使能端低电平/*-*/*-向LCD1602写数据-*/void write_data(uchar data0)rs=1;/选着写数据P0=data0;/向LCD写数据lcdcs=1;/信号使
温馨提示
- 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
- 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
- 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
- 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
- 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
- 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
- 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。
最新文档
- 2025重庆綦江区三江街道公开招聘公益性岗位2人备考考试题库附答案解析
- 2025年宿州灵璧师范学校秋季学期公开招聘教师备考考试题库附答案解析
- 2025下半年浙江金华市兰溪市市属国企人才引进招聘19人备考考试题库附答案解析
- 2025年安徽建筑大学管理及教学助理招聘11名备考考试题库附答案解析
- 2025江西天然气管道设备安装工程有限公司面向江投集团内部招聘2人备考考试题库附答案解析
- 2025上海市崇明区交通运输事业发展中心 公开招聘非在编人员备考考试题库附答案解析
- 2025年泉州发展集团有限公司(第二批)人才引进招聘29人备考考试题库附答案解析
- 基于移动互联网的智能家居服务机器人系统架构设计-洞察及研究
- 网络功能模块化分析-洞察及研究
- 旅游线路调整协议书8篇
- 2025年“学宪法、讲宪法”主题活动知识竞赛题库及答案
- 2024年毕节威宁自治县招聘城市社区工作者真题
- GB/T 15234-2025塑料平托盘
- 山东省汽车维修工时定额(T-SDAMTIA 0001-2023)
- GB/T 4170-2006塑料注射模零件技术条件
- GB/T 12363-2021锻件功能分类
- 水调歌头-公开课教学设计 省赛一等奖
- 《番茄工作法图解》课件
- 报价单模板及范文(通用十二篇)
- 蒂森克虏伯电梯MC2-C调试介绍
- 苏教版三年级数学上册《间隔排列》作业纸(大组教研)
评论
0/150
提交评论