(信号与信息处理专业论文)基于89c51的转速测量系统设计.pdf_第1页
(信号与信息处理专业论文)基于89c51的转速测量系统设计.pdf_第2页
(信号与信息处理专业论文)基于89c51的转速测量系统设计.pdf_第3页
(信号与信息处理专业论文)基于89c51的转速测量系统设计.pdf_第4页
(信号与信息处理专业论文)基于89c51的转速测量系统设计.pdf_第5页
已阅读5页,还剩35页未读 继续免费阅读

下载本文档

版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领

文档简介

摘要 本文首先叙述了单片机测量转速的系统构成及转速测量的几种常用方法,分 析了相应方法在测量上的特点、误差和计算。其次,针对特定的应用环境,设计 出一种基于8 0 c 5 1 单片机的全数字式测速系统,详细阐述了系统的工作原理, 指出产生误差的可自原因,并给出了具体解决的方法;根据系统要求编制了源程 序,分析其工作流程。最后,对构建的系统利用仿真机进行调试,对测量指标进 行了分析、比较并提出改进方案。 关键词:单片机转速测量精度仿真 a b s t r a c t t h i sp a p e rf i r s td i s c u s s e ds o m ew a y s 幻rr o t a f ys p e e dm e a s t l r e i ta n a l y z e dc h a r a c t e r sa n de r r o r so ft h e s ew a y s s e c o n d ,i td e s i g n e df u l ld 堙i t a lm e a s u r es y s t e mb a s e do na s i n g l e - c h i pm i c r o p r o c e s s o r( 8 0 c 5 1 )r e s p o n d i n g t o s p e c i a l a p p l i c a t i o n ,s t a t e d t l ew o r k i h gt h e o r y0 ft h es y s t e ma h dt h e m e t h o d st os o l v et h ee r r o r s ,w r i t e dt h ew o r l 【i n gp r o g r a m m e sb y a 5 la s s e m b l el a n g u a g e f i n a l l y ,t h i ss y s t e mi m p l e m e n t a t i o nw a sc o n f i r m e db yu s i n go f k e i l s ls i n m l a t o r t h ec h a r a c t e r so nt h ee r r o rm a r g i na n da c c u r a c y w a ss u n l m a r i z e d k e y w o r d s :s i n g i e c h i pm 圭c r o p r 钟e s s 甜r o t a r ys p e e dm 鼯s u r ep r e c i s 仰 k c i k s l s i m u l a t o r i i 东南大学学位论文独创性声明 本人声明所呈交的学位论文是我个人在导师指导下进行的研究工作及取得的研究成果。尽 我所知,除了文中特别加以标注和致谢的地方外,论文中不包含其他人已经发表或撰写过的 研究成果,也不包含为获得东南大学或其它教育机构的学位或证书而使用过的材料。与我一 同工作的同志对本研究所做的任何贡献均已在论文中作了明确的说明并表示了谢意。 号“爷 东南大学硕士学位论文 1 1 单片机测控系统 第一章绪论 单片机可以构成各种工业控制系统、适应控制系统、数据采集系统等。在这个领域中, 有不少是采用通用c p u 单板机或通用计算机系统。随着单片机技术的发展,大部分都可以用 单片机系统或单片机加通用机系统来代替。如气轮机电液调节系统、调速系统等。典型的应 用系统是单片机要完成工业测控功能所必须具备的硬件结构系统,它包括系统扩展和系统配 置两部分内容。应用系统如图i l 所示,整个系统由基本部分和预0 控增强部分及外设增强部分 构成。 基本部分是外围芯片的扩展及功能键盘、显示器配置,通过总线连接而成,测控增强部 分主要是传感器接口与伺服驱动控制接口。它们直接与工业现场相连,是干扰进入的主要通 道,一般要采取隔离措施。 + 一n r r o mf 鬯竺h 竺! 卜 照 i一 匝田 三卜 片悟 阿磊订丽磊r 机叫卜 区受1 耳 兰:兰l 四 赢面磊n 卜f l i + _ 图1 1单片机典型应用系统 对于数字量( 频率、周期、相位、计数) 的采集后可通过i o 口输入,数字脉冲可直接作 为计数输入、测试输入、i o 口输入或中断源输入进行事件计数、定时计数、实现脉冲的频率、 相位及计数测量。对于模拟量的采集,则应通过a 仍变换后送入总线口,i ,o 口或扩展i ,o 口, 并配以相应的a 仍转换控制信号及地址线。对于开关量的采集则一般通过i o 口或扩展f o 口线。应用系统可根据任何一种输入条件或内部运行结果进行输出控制。开关量输出控制有 时序开关、逻辑开关、信号开关阵列等,通常,这些开关量电是通过i o 口或扩展i o 口输出。 模拟量的输出常为伺服驱动控制,控制输出通过d a 变换后送入伺服驱动电路。 堑二兰堑笙 1 2 转速测量在国民经济中的应用 转速测量的应用系统在工业生产、科技教育、民用电器等各领域的应用极为广泛,往往 成为某一产品或控制系统的核心部分,其各种参数在不同的应用中有其侧重,但转速测量系 统作为普遍的应用在国民经济发展中,有重要的意义。下面列举二例加以说明。 1 2 1 转速测量在调速系统中的应用【1 l 直流电机具有良好的起、制动性能,易于在宽广范围内平滑调速,所以长期以来在要求调 速指标较高的场合获得了广泛应用。随着电力电子技术和控制技术的发展,交流调速系统日趋 完善,其性能可与直流调速系统相媲美,其变频调速的应用范围日益扩大,但它的控制技术相 对复杂,整个控制系统造价较高,在某些领域短时间内还难以取直流调速系统,调速系统便应 运而生了。调速系统主电路线路简单,所用的功率元件少;开关频率高,可达到1 0 0 0 4 0 0 0 h z ,电流易连续,谐波少,脉动小,电机损耗和发热都较小;低速性能好,稳态精度高,因而 调速范围宽;调速系统频带宽,快速响应性能好,动态抗扰能力强:主电路元件工作在开关状 态,导通损耗小,装置效率高;直流电源采用三相整流时,电网功率因数高,可广泛用于交通、 工矿企业等电力传动系统中。 转速测量部分 本测量系统采用8 9 c 5 1 单片机控制,利用霍尔元件由转速产生的脉冲,对转速进行测量, 原理框图如图1 3 所示。转速由单片机的p o 口输出,同时当电机转速超过设定值时,通过单片 机的pl 口输出信号,驱动响铃报警。 性能特点: ( 1 ) 8 9 c 5 1 配合晶体管的双极式可逆p w m 变换器构成直流电机驱动系统,可获得高性 能的调速性能指标; ( 2 ) 直流电机驱动系统结构简单,省去了复杂的换流装置,因此体积小, 成本低,加之采用硬软件结合的微机控制方式,提高了系统的可靠性和抗干扰性。 茁 片 机 图l 一3调速系统中的转速测量框图 东南大学硕士学位论文 ( 3 ) 转速测量系统采用软件实现,动态显示容易,超限报警方便,提高了系统的灵活性。 ( 4 ) 由变换器构成直流电机驱动系统,可有效克服以往的直流调速中的谐波大、功率因数 低的问题,是一种节能的调速方案。 1 2 2 变m 厂i i 法在风力发电机并网控制中的应用 发电机叶轮吸收的功率,一部分用来克服叶轮旋转的阻力矩,其余部分转变为电能。叶轮 通过硬质齿面增速齿轮箱带动4 极2 0 0 k w 异步发电机。主叶轮转速达到4 0 r p m 时,发电机转 速达到同步转速,应并入电网发电,发电机转速低于同步转速时应脱离电网。对合闸时具有大 电流冲击特性的异步发电机来说,除采用软切入并网技术外,还应满足在同步转速点切入的严 格要求。自然界的风速风向变化是难以预测的随机变量,加上叶轮转动时的巨大惯量和强电磁 干扰。因此,风力发电机的安全并脱电网是风机控制的关键技术。自动并脱电网的主要根据 是发电机的实时转速,采用准确、快速的转速测量方法尤为重要。用变m 厂r 法测速,以4 个转 速计数脉冲( m i = 4 ) 为个测算周期。在风力发电机并入电网控制中,变m t 法能够较好地满足 并网对发电机转速的精度要求。同时,随着电机转速不断的提高,4 个转速脉冲之间的时间总 和相应减少,测算周期也相也就是应缩短,这也正好满足发电机并网时对转速测量快速性的要 求。有效地防止了在高风速起动时,风机因超过并网而飞车造成的并网失败。 1 3 转速测量方法概述 转速测量的方法有很多,根据工作原理可分为计数式、模拟式、同步式。计数式方法是 用某种方式读出一定时间内的总转数;模拟式方法是测出由瞬时转速引起的某种物理量的变 化;同步式是用利用已知的频率与旋转体的旋转同步来测量转速,根据不同的转换方式,测 试方法参看表1 1 所示。 一般的转速测试可用机械式转速表、发电机式转速表以及频闪式测速表,但在有些情况 下,其测量精度,瞬时稳定度不能满足更高的要求,因此,在测量方法和传感器的选择上显 得尤为重要。常用的传感器种类有光电传感器、电磁式传感器、电容式传感器等,而测量方 法上有测量转速周期、转速频率等。 如表1 1 所示 第二章基于单片机的转速测量原理 型式 测量方法适用范围 特点 备注 计 机械式 通过齿轮转动数字轮 中、低速简单、价廉 数 光电式 来自被测旋转体上的光线使光电管产中、高速数字式 式 生电脉冲 电磁式 利用磁电转换器将转速变换成电脉冲中、高速数字式 模 机械式利用离心力与转速成平方成正比的关中、低速简单 拟系 式 发电机式 利用电机电流或交流电压与转速成正向理可远距指测速发电机 比关系 电容式利用电容充、放电与转速成正比的关系中、高速 同机械式转动带槽的圆盘,观察旋转体的同步关中速 步系 式 闪光式 用已知频率闪光测出旋转体同步的频中、高速 室 表l l 各种测速方法比较 就转速测量原理而言,大体可分为三大类,一是用单位时间内测得物体的旋转角度来计 算速度,例如在单位时间内,累计转速传感器发出的n 个脉冲,即为该单位时间的速度。这 种以测量频率来实现测量转速的方法,称测频法。即“m ”法;另一类是在给定的角位移距 离内,通过测量这一角位移的时间来进行测速的方法,称测周法,即“t ”法,如给定的角位 移目,传感器便发出一个电脉冲周期,以晶体震荡频率而产生的标准脉冲来度量这一周期时 间,再经换算可得转速。这两种测速方法各有优缺点,“m ”法一般用于高速测量,在转速较 低时,测量误差较大,而且,检测装置对转速分辨能力也变差:而“t ”法一般用于低速测量, 速度越低测量精度越高,但在测量高转速时,误差较大;结合这两种铡量方法就可以地出第 三种测量方法,即m 厂r 法结合这两种方法的优点,一方面象“m ”法那样在对传感器发出 的脉冲计数的同时,也象“t ”法那样计取脉冲的时间,通过计算即可得出转速值。在实际测 量中,还须设定定时时间,兼顾高、低转速时的精度影响,适时调节采样时间。 1 4 课题研究目的和意义 转速是工程中应用非常广泛的个参数,其测量方法较多,而模拟量的采集和模拟处理 一直是转速测量的主要方法,这种测量方法已不能适应现代科技发展的要求,在测量范围和 测量精度上,已不能满足大多数系统的使用。随着大规模及超大规模集成电路技术的发展, 数字系统测量得到普遍应用,特别是单片机对脉冲数字信号的强大处理能力,使得全数字测 銮堕查堂竺主兰堡堡兰 量系统越来越普及,其转速测量系统也可以用全数字化处理。在测量范围和测量精度方面都 有极大的提高。因此,本课题的目的是:对各种测量转速的基本方法予以分析,针对不同的 应用环境,利用8 0 c 5 1 系列单片机设计一种全数字化测速系统,从提高测量精度的角度出发, 分析讨论其产生误差的可能原因,为今后的实际使用提供借鉴。并从实际硬件电路出发,分 析电路工作原理和软件流程,根据仿真情况提出修改方案和解决办法。 课题以单片机为中心,设计的全数字化测量转速系统,在工业控制和民用电器中都有较 高使用价值。其可以应用于工业控制中的某一部分,如数控车床的电机转速检测和控制、水 泵流量控制以及需要利用转速检测来进行控制的诲多场合。如车辆的里程表、车速表等。其 次该转速测量系统由于采用全数字化结构,因而可以很方便的和工业控制计算机进行连接, 实行远程管理和控制,进一步提高现代化水平。并且,几乎不需做很大改变直接就能作为单 独的使用产品。总之,转速测量系统的研究是一件非常有意义的课题。 1 5主要内容和存在的问题 1 5 1 研究的主要内容 1 详细分析转速的测量理论,对转速的周期测量法“t ”法、频率测量法“m ”法以及 周期频率“m ,r ”测量法,三种具体测量方法的转速计算、各自的测量精度和误差进行阐述。 定性地比较三种方法所针对的转速特征,分析高、中、低转速情况下各自的适用状况,从而, 在保持一定的测量精度情况下,应用“m ”法,说明转速测量原理。 2 根据单片机系统的设计原则,提出测量方案,构建硬件系统,分别对硬件系统的配置 予以估计,使其能够对转速进行测量。同时分析接口电路,显示转速。 3 对单片机定时,计数器进行设置,设计和说明定时计数器在“m ”法测量中的作用和使 用方法,讨论测量精度的问题。 4 根据系统要求设置各控制字,用a 5 1 汇编语言编制程序,包括主程序流程,显示中断 程序流程。并用软件的方法对计数和定时进行同步,力求在不增加硬件的条件下,使同步达 到满意的效果。 5 利用k e i l 5 1 软件的u v i s i o n 2 集成环境对系统对工作软件进行编译、调试和仿真。 1 5 2 需解决的问题 1 单片机在系统运行过程中,中断设置问题 2 系统硬件电路制作,调试。 3 监控程序及人机界面的设计。 第二章基于单片机的转速测量原理 第二章基于单片机的转速测量原理 2 1 单片机测量转速的基本方法 转速是工程中应用非常广泛的一个参数,早期模拟量的模拟处理一直是作为转速测量的 主要方法,这种测量方法在测量范围和测量精度上,已不能适应现代科技发展的要求。而随 着大规模及超大规模集成电路技术的发展,数字测量系统得到普遍应用,利用单片机对脉冲 数字信号的强大处理能力,应用全数字化的结构,使数字测量系统的越来越普及。在测量范 围和测量精度方面都有极大的提高。下面将测量系统作一探讨。 2 1 1 测量系统的构成 一般转速测量系统有以下几个部分构成,如图2 - 1 图2 一i 转速测量框图 1 转速信号拾取 转速信号拾取是整个系统的前端通道,目的是将外界的非电参量,通过一定方式转换成 电量,这一环节可以通过敏感元件、传感器或测量仪表等来实现。方法如下: ( 1 ) 通过敏感元件拾取被测信号 敏感元件体积小,可以根据用户及环境要求做成各矛中形状的探头,它能将被测的物理量 变换成电流、电压,只要选择合适的元件参数。如r 、l 、c 设计相应的电路,便能完成这种 对应关系。这种方法设计难度大,信号稳定度差,在模拟处理系统中不宜采用。 ( 2 ) 通过传感器拾取信号 由专业人员将敏感元件和相应的测量电路、传递机构以适当的形式制成不同类型、不同用 蔓堕查兰堡主堂篁堡三 处的传感器,根据原理输出电量。该电量可以是模拟量或数字量,现代传感器还可以输出开 关量,用于数字逻辑电路。 ( 3 ) 通过测量仪表拾取被测信号 目前有许多测量仪表用于各种测量中,有大信号输出、有b c d 码输出等,但价格昂贵, 专业性强,一般不适合通用系统。 通用的转速测量系统大都采用一种俗称“码盘”的传感装置,将圆形的码盘固定在转轴上, 码盘上有若干规则排列的小孔,用光电偶来输出电信号,以反映转速对应关系,即是将转轴 的速度以脉冲形式反映出来,通常有两种形式: 1 ) 模拟量量化后经a 仍转换,由数字量反映角度,供单片机计算处理,得出转速。 2 ) 直接由脉冲来反应转轴的角度,用每转产生的脉冲经单片机处理得出转速。 2 整形和倍频 前向通道中,从传感器输出的信号必须转换成计算机输入要求的信号,由于信号调节 电路与传感器的选择,现场干扰程度等,都会影响信号的质量。而脉冲信号的上升沿和下 降沿对数字电路的触发尤为重要,若要将转速脉冲信号直接加到计数器或外部中断的输入 端,并利用其上升沿来触发进行计数,则必须要求输入的信号有陡峭的上升沿或下降沿。 处理方法上可以用触发器电路来整形。而倍频电路主要用于解决低转速时测量精度问题。 及码盘的刻度误差而造成的精度下降问题。方法是在每转中增加脉冲的个数( 码盘的线程 数) 来提高精度。但在高转速时,由于脉冲个数的增加,限制了最高转速测量量程,这个 问题可用单片机控制来动态处理解决,兼顾高低转速的测量精度。 3 单片机 单片机是整个测量系统的主要部分,担负对前端脉冲信号的处理、计算、以及信号的同 步,计时等任务,其次,将测量的数据经计算后,将得到的转速值传送到显示接口中,用数 码管显示数值。在本系统中考虑到计数的范围、使用的定时,计数器的个数及i ,o 口线,预选 用8 9 c 5 1 单片机。具体工作情况在后讨论。 4 驱动和显示 由于l e d 数码管具有亮度高、可靠性好等特点,工业测控系统中常用l e d 数码管作 为显示输出。本系统也采用数码管作显示。 l e d 显示器是用发光二极管显示字段的,通常使用七段构成“日”字型和一只发光二极 管作为小数点,称八段数码显示器。其有两种驱动方式,共阴驱动和共阳驱动,共阴驱动是 各段发光二极管的阴极连在一起,并将公共端接地,在共阳结构中,将各段发光二极管阳极 连在一起,并将公共端接上+ 5 v 电源,显示字符对应字型代码发光。 2 1 2 转速测量原理 1 铡周期法“t 法” 要三兰茎! 兰苎塑堕壁鲨型量曼墨 转速可以用两脉冲产生的间隔宽度t p 来决定。用以采集数据的码盘,可以是单孔或多孔, 对于单孔码盘测量两次脉冲间的时间,就可测出转述数据,t p 也可以用时钟脉冲数来表示。 对于多孔码盘,其测量的时问只是每转系p 万in 为码盘孔数。 如图2 2 所示: 冲厂厂 时基脉冲 l u i l i l l i0 i l5 l l +t t - : 图2 2 “t ”法脉宽测量 t p 通过定时器测得。定时器对时基脉冲( 频率为f c ) 进行计数定时,在 t p 内计数值若为m 2 ,则 计算公式为 即: 6 0 咒。i f ( 2 一1 ) p tp 、。l n :警 :, p 珑2 、 p 一为转轴转一周脉冲发生器产生的脉冲数。 ,。一为硬件产生的基准时钟脉冲频率单位h z 。 n 一转速单位;( 转分) m 2 一时基脉冲 由图2 2 可知“t ”法测量精度的误差主要有两个方面上,一是两脉冲的 上升沿触发时间不一致而产生的:二是计数和定时起始和关闭不一致而产生 的。因此要求脉冲的上升沿 或下降沿) 陡峭和计数和定时严格同步。测周法在 低转速时精度较高,但随着转速的增加,精度变差,有小于一个脉冲的误差 存在。 2 测频法“m 法” 在一定测量时间t 内,测量脉冲发生器( 替代输入脉冲) 产生的脉冲数 r 东南大学硕士学位论文 m j 来测量转速。如图2 3 所示 : p 一t 一 图2 3 “m ”法测量转速脉冲 设在时间t 内,转轴转过的弧度数为x ,则的转速n 可由下式表示 6 0 x 一 肛瓦茅 ( 2 - 3 ) 2 万丁 “。j 转轴转过的弧度数x ,可用下式所示 x ,= 孚 。, p 、一 将( 2 4 ) 式代入( 2 3 ) 式,得 转速n 的表达式为: 。一6 0 m l,z = 1 劲 2 5 n 一转速单位:( 转分) t 一定时时间单位:( 秒) 在该方法中,测量精度是由于定时时间t 和脉冲的不能保证严格同步,以及在t 内能否正 好测量外部脉冲的完整的周期,可能产生的1 个脉冲的量化误差。因此,为了提高测量精度, t 要有足够长的时间。定时时间可根据测量对象情况预先设置。设置的时间过长,可以提高精 度,但在转速较快的情况下,所计的脉冲数增大( 码盘孔数已定情况下) ,限制了转速测量的量 程。而设置的时间过短,测量精度会受到一定的影响。 3 测频测周法m t 法 第二章基于单片机的转速褪惺原理 所谓测频测周法,即是综合了“t ”法和“m ”法分别对高、低转速具有的不同精度,利 用各自的优点而产生的方法,精度位于两者之间。 如图2 4 所示: k ! 、 山心山山删山山山灿山圳l i l l l 山山山山0 卜、, m z 图2 4 “m ,t ”法定时,计数测量 “m t ”法采用三个定时计数器,同时对输入脉冲脉、高频脉冲( 由振荡器 产生) 、及预设的定时时间进行定时和计数,m - 反映转角,0 2 反映测速的准确时 间,通过计算可得转速值n 。该法在高速及低速时都具有相对较高的精度。测速 时间t d 由脉冲发生器脉冲来同步,即t a 等于m ,个脉冲周期。由图可见,从a 点开始,计数器对m l 和m 2 计数,到达b 点,预定的测速时间到,计算机发出停 止计数的指令,因为t c 不一定正好等于整数个脉冲发生器脉冲周期,所以,计 数器仍对高频脉冲继续计数,到达c 点时,脉冲发生器脉冲的上升沿使计数器 停止,这样,m 2 就代表了m 个脉冲周期的时间。 “m t ”法综合了“t ”和“m ”两种方法,转速计算如下: 设高频脉冲的频率为f c ,脉冲发生器每转发出p 个脉冲,由式( 2 2 ) 和( 2 5 ) 可得m t 法转速计算公式为: 肛孥 。, p n 一转速值。单位:【转,分) ,。一晶体震荡频率。单位h z m ,一输入脉冲数,反映转角。 m 2 一时基脉冲数。 l o 东南大学硕士学位论文 2 2 误差和精度分析 2 2 1 “m 法”测量误差分析 由转速由公式 6 0 m 凡2j 给出 口丁 4 “ 因m 】的量化误差是1 个脉冲,故转速变化: 其相对误差为 h ! ! ( 竺! 圭! ! :皇堕+ 竺 p 丁 p 丁p 丁 ( 2 7 ) = n + n 血1 占= = ,2 m n 口丁 1 6 0 ( 2 8 ) ( 2 9 ) 6 0l s2 i 7 。= ( 2 一l o ) 口丁,z lz l u f 一相对误差 n 。一加入一个脉冲后的转速值 n 一转速误差 由( 2 一1 0 ) 式可知,e 随转速n 增大而减小,因此,这种方法适合于高速 测量,当转速越低,产生的误差会越大。 2 。2 2 “t 法”测量误差分析 因m t 的量化误差也是1 个脉冲,放引起的转速变化也可以由下式给出: 第二章基于单片机的转速测量原理 n ,:塑:盟+ p ( + 1 ) p 他 = 艇,2 其相对误差为 6 0 z p m :( 1 ) ( 2 一1 1 ) 托ll 耻i 2 面2 甄 口 p n 所以由( 2 1 2 ) 式可知,占随转速减小而减小,因此。这种方法适合于低速 测量,转速增高,误差增大。 2 2 3 “m t 法”测量误差分析 由其测量原理可知。输入计数脉冲和计数定时值在理论上是严格同步的, 因此,在理论上,m t ( 定时器的计数值) 不考虑误差,由于实际启动是由程序 来控制的( 系统应采取由输入计数脉冲来同步) ,故可能会产生一个脉冲的量 化误差,因而,转速变化为: 石:堡显 竺:堡丝翌+ 堡蛭竺 p ,码+ 砚l p ( 7 q + 鸭) 一p ( ,q + 他) ( ,q + ,哇1 ) = n + 难 其相对误差为: n1 踞i 2 i 丽 nm ,+ ,l 。7 由式( 2 6 ) 得: 叩啬一一寄 。一6 0 正m l m - + i n ,2 。2 p n ( 2 一】4 ) ( 2 15 ) 东南大学硕士学位论文 将( 2 一1 4 ) 、( 2 1 5 ) 代入( 1 2 13 ) 得 1 己一= 百 ( 2 ,1 6 ) m l 。” 由上式可知: 这种转速测量方法的相对误差与转速n 无关,只与晶体振荡产生的脉冲有 关,故可适合各种转速下的测量。保证其测量精度的途径是增大定时时间t ,或 提高时基脉冲的频率f c 。因此,在实际操作时往往采用一种称变m t 的测量方 法,即所谓变m t 法,在m t 法的基础上,让测量时间t c 始终等于转速输入脉 冲信号的周期之和。并根据第一次的所测转速及时调整预测时间t c ,兼顾高低 转速时的测量精度。 2 2 4 码盘刻度误差分析1 4 】 原理上测量误差的来源主要有码盘刻线误差、计数过程中的1 误差、时 间基准误差、干扰造成的误触发引起的误差。由于数字电路具有很强的抗干扰 能力,干扰引起的测量误差可忽略;时间基准采用晶体振荡器,误差小可以不 计;用码盘脉冲作捕获信号,码盘脉冲计数值中不含1 误差。因此码盘刻线 误差和标准时间计数值中的1 误差是影响测量准确度的主要因素。 误差分析: 误差可看为两部分产生: 占t 石十了 ( 2 1 7 ) 式中t 一实际测量时间 三一刻度误差 珊f 三一1 误差 f 由( 2 一l7 ) 式可知: 增大测量时间t 有利于提高测量准确度。在动态性能许可的情况下,应尽 第二章基于单片机的转速测量原理 可能采用大的测量时间。通常码盘脉冲倍频数可以是p 的整数倍。在测量时间 和码盘脉冲倍频数确定后,确定标准时间t c 。以确保测量准确度为准。 在其他条件不变的情况下,转速越高,码盘刻线误差越小;反之,刻线误 差越大。实际测量时间t 随t c 的增大而增大。 2 3 转速测量电路设计 2 ,3 1 硬件电路设计 一个单片机应用系统的硬件电路设计应包含有两个部分内容: 第一是系统扩展,即当单片机内部的功能单元,如r o m 、r a m 、i o 口、 定时计数器、中断系统等容量不能满足应用系统要求时,必须在片外进行扩展, 选择适当的芯片,设计相应的电路。 第二是系统配置,即按照系统功能要求配置外围设备,如键盘、显示器、打 印机、d ,a 、a ,d 转换器等,并设计相应的接口电路。因此,系统的扩展和配置 应遵循下列原则:【5 】 尽可能选择典型电路,并符合单片机的常规用法。 系统的扩展与外围设备配置应满足系统功能的要求,并留有适当的余量, 以便进行二次开发。 硬件结构应与应用软件方案统一考虑,软件能实现的硬件功能尽可能用 软件来实现,但需注意的是软件实现占用c p u 的时间。面且,响应时间 比硬件长。 单片机外接电路较多时,应考虑其驱动能力,减少芯片功耗,降低总线 负载。 根据上述原则,设计系统如图2 5 所示: 8 9 c 5 1 p 2 0 p 24 l 怕h 脉冲整形p t 0 j驱动 p 0 ,0 日日日日日 p 07 图2 5 单片机系统测量转速原理框图 本系统由于只考虑转速盼测量与显示,在考虑系统配置和扩展时尽可能利 1 4 东南大学硕士学位论文 用单片机本身的资源,以提高性价比,选择8 9 c 5 1 系列的单片机作为系统的控制 芯片。8 9 c 5 l 单片杌片内含有一4 k 的程序存储器:1 2 8 字节的寄存器空间;2 个1 6 位的定时计数器:3 2 根i o 口线;5 个中断源。而本转速测量系统采用“m ” 法的测量方法,需一个用于对外部脉冲计数的计数器,一个用于对内部高频脉冲 计数的定时器,用于调整、预定定时时间。从分析可以看出8 9 c 5 1 能满足系统要 求,不须另外扩展计数器,外部中断分别用于定时,计数同步中断和响应,定时 器利用其溢出中断来预定测量的时间,该时间要求准确,可根据测量高、中、低 转速来进行调整。 2 3 2 电路工作原理分析 本系统单片机采用a t m e l 公司生产的8 9 c 5 1 作为主控制器,用5 位l e d 数 码管作为显示。 1 显示部分 8 9 c 5 1 单片机的i 0 口输出特性是有较大的灌入电流能力,其中p 0 口的灌 电流能力可达2 0 m a ,完全可以用于数码管的驱动,但只有很弱的“吐”电流 的能力,因此本系统中选用共阳型数码管,将p o 口作为数码管的段驱动,p 2 口的5 位接5 只p n p 型三极管构成位驱动。这样,省去了显示驱动芯片,提高了性价 比。 2 上电复位 8 9 c 5 1 的r s t 端通过电阻和电容直接和电源端相连,实现上电复位,理论 上只要复位管脚出现2 个机器周期以上的高电平即可完成复位,阻容元件的时 间常数可以很小,但考虑到开机时,电源有个上升过程,以及振荡电路尚未完 全起振等因素,这里选用的电阻为l k ,电容为1 0 u 。上电瞬间,r e s e t 端的电 位与vcc 相同,随着充电电流减小,r e s e t 端的电位逐渐下降,按电路参数可 选择电阻为1k o ,电容为1 0 u f 。则时间常数t = r c = 1 0 1 0 “l 1 0 3 = 1 0 m s ,这 个时间常数,足以完成复位操作。 系统还可以采用另一种复位方式,即利用x 5 0 4 5 芯片提供的上电复位功能 进行复位。x 5 0 4 5 是集上电复位、看门狗、掉电复位、串行e e p r o f 四种功能 于一体的多功能芯片,当系统要求较高时,应采用该芯片进行复位,当然,这 会使系统性价比有所下降。本系统暂不采用。 3 脉冲发生器 为了说明转速测量原理,减少硬件的复杂程度和投入,在不影响分析的 基础上,这里使用了脉冲发生器产生方波来替代,并通过程序中设置,模拟码 盘每转的线数及通过调节n e 5 55 构成的脉冲发生器的频率来模拟转速的快慢。 第二章基于单片机的转速测量原理 没有考虑波形畸变和干扰,在实际应用中也可以用整形和抗干扰电路来调整。 该脉冲直接加到单片机的p 3 4 ,即计数器t 0 的输入端,下降沿触发计数。 4 单片机时钟 单片机的1 8 、1 9 脚接晶体和两个2 7 p f 的电容,这里选用振荡频率为1 2 m h : 的晶体。 5 键盘 为使系统更有灵活性及有扩展性,本系统在设计时,预留了键盘部份,利用 该键盘,可以进行设置系统允许的最高低转速值等操作,以便在今后的工作 中对此板作进一步的开发。 6 数据存储 为使系统更有灵活性及有扩展性,本系统预留了串行e e p r o m 接口,以便存 储系统允许的最高低转速,记录运行中出现的最高低转速等工作。 可以使用一块x 5 0 4 5 芯片作为数据存储,该芯片中带有5 1 2 字节e e p r o m , 可以用电擦除的方式进行改写,改写的次数可达l o o 0 0 0 0 次,掉电之后数据保 证4 0 年不会丢失。本系统暂不讨论。 东南大学硕士学位论文 3 1 程序设计初步 第三章系统程序设计和调试 硬件电路设计完毕,即进行程序设计,在程序设计之前,首先要确定定时器 的工作方式,方式控制字,确定串行口的工作模式等,下面分别讨论。 3 1 1 工作方式及控制宇设置 1 定时计数器t 0 本系统设计中,t o 被用于计数,我们当然希望计数量大为好,这样,可以 获得较大的测量范围,因此,t o 选定为工作方式l ( 1 6 位的计数方式) ,设计 中,没有使用外部控制端,仅用指令置位清零t r o 来进行计数的启动停止, 这样,电路较为简单,但精度会受到一定的影响,但在本设计中,认为采用这 种方式,精度可达到要求,因此,t o 采用自由计数的方式,不用预置初值。 2 定时计数器t l 本系统设计中,t 1 被用于数码管显示及形成闸门信号,由于系统中用到5 位数码管,动态显示时,一组数码管显示的总时间以不超过2 0 m s 为宜,因此, 这里选择t 1 的定时时间为4 s ,5 位数码管显示完毕,正好用于2 0 m s ,这里选 用t 1 的工作状态h 确定了定时计数器t l 的定时时间以后,就要计算定时初值,本系统用了 1 2 m 的晶振,恰好是一个机器周期为l u s ,因此,4 m s 定时时间意味着只要计数 4 0 0 0 次即可,由于定时计数器t l 是向上计数,因此,要化为1 6 进制,并分 别送入t 1 的高8 位和低8 位。这里,采用的k e 儿汇编软件有较强的预处理功 能,能够处理较复杂的运算,因此,程序中可写为: m o vt h l ,# h i g h ( 6 5 5 3 6 4 0 0 0 ) m o vt l l ,# l 0 w ( 6 5 5 3 6 4 0 0 0 ) 这里使用了两条指令# h i g h 和# l o w ,它们的用途分别是取其后括号中数值的 高8 位和低8 位,因此,这两行语句的含义就是取6 5 5 3 6 4 0 0 0 的高8 位和低 8 位,写成6 5 5 3 6 4 0 0 0 而不是写出其结果6 1 5 3 6 可以提高程序的维护性,直 观地看到定时初值。 由于8 0 c 5 l 单片机在中断时,会附加延时3 8 个周期,在满足一定条件的情 形下,验证这个数值是否正确,可以在进入仿真调试时通过观察k e i l 提供的有 关变量看到,如果不正确,可以根据实际情况略作调整,保证定时时间为4 m s 。 第三章系统程序设计和调试 3 定时计数器的方式控制字 定时计数器的方式控制字t m o d ,其地址为8 9 h ,复位值o o h ,不可位寻址。其8 位控制 内容如下表: i l1 n ) 表3 一i 说明: g a t e :门控位。由g a t e 、软件控制位t r o 1 和刷,们共同决定定时计数器0 1 的打开或关闭。当g a t e = 0 ,只要用指令置t r o l = 1 即可启动定时计数器0 i 工作。g a t e = 1 ,只有删,口朋引脚为高电平且用指令置t r 0 l = l 时,才能启动定 时计数器o 1 的工作。 c 丁:定时器计数器选择位。c 了1 = l ,工作于计数器方式;c 丁= o 工作于定 时器方式。 m 1 l l l o :定时计数工作模式选择位。m 1 m o = o o ,1 3 位计数;m 1 m o = o l ,1 6 位计 数;m 1 m o = 1 0 ,自动再装入8 位计数;m 1 m o = l l ,工作于模式3 状态。 根据前面的描述,可以确定t m o d 的控制字应为0 0 0 1 0 1 0 l b 。 程序中用: m o vt m o d ,# o o o l o l o l b 将控制字送入t m o d 。 4 定时计数控制寄存器t c o n t c o n 地址8 8 h ,可进行位寻址,复位值o o h 。 表3 2 t f o 、t f l 分别为定时器t o 和计数器t 1 的溢出标志位,t r 0 和t r l 在正常情 况下,都没有溢出标志,只有当计数值或定时值超过6 5 5 3 6 时,才能有溢出中 断请求,这两位是由硬件置位和硬件清零,不需另行设置。可在t 0 和t l 的溢 出中断服务程序中,以供使用。 t r l 、t r 0 分别用于开启t 1 和t 0 的开关位,其中t r l 由系统开启时,直接 置位,打开t l ,开始定时,经运行判断后,打开t r o 。 3 1 2 变量分配及程序的初始化 在程序开始之前,首先进行变量的分配,使用e 0 u 伪指令定义了一些符号变 东南大学硕士学位论文 量,使得程序阅读时较为直观。 程序的初始化,根据硬件电路的要求,将各硬件电路置于其规定的状态;根 据需要,设置堆栈;对定时器、计数器、串行口等设置工作状态,预置初值等。 以下是程序定义变量及进行初始化的程序行。 d i s p b u fe q u5 a f :显示缓冲区从5 a h 开始,共5 个单元。 s e c c o u l le q u5 9 h :秒计数器单元,用于累计t l 的中断次数,每2 5 0 个为一秒。 s p c o u n e q u5 7 h ;速度计时器单元5 7 h 和5 8 h ,高位在前( 5 7 h 单元中) c o u n t e q u5 6 h;显示时的计数器 s p c a l c b i to o h :要求计算速度的标志,该位为1 时主程序计算速度,然后清该位 h i d d e ne o u l o ;消隐码 ;以上分配变量 m o v s p ,# 5 f h :设置堆栈 m 0 v p l , # o f f h :将p 1 置位高电平。 m o vp o ,# 0 f f h :将p 0 置位高电平。 m o v p 2 , # o f f h ;将p 2 置位高电平,以上三行熄灭所有l e d 及数码管。 m o v t m o d ,# 0 0 0 1 0 1 0 l b ;定时器t 1 工作于方式l ,定时器t o 工作方式1 。 m o v t h l ,# h i g h ( 6 5 5 3 6 - 4 0 0 0 ) m o vt l l ,# l o w ( 6 5 5 3 6 4 0 0 0 ) s e t bt r l s e t b e t l ;开定时器1 中断 s e t be a 3 1 3 定时器t 1 中断处理 值。 定时计数器t 1 每4 m s 中断一次,用以进行数码管显示和每1 秒读取一次计数器t o 中的数 1 秒信号的产生 中断产生后: i n cs e c c o u n m o v a ,s e c c 吼i n c j n ea ,# 2 5 0 ,g 0 2 判断s e c c o u n 是否到达2 5 0 了,如果到达2 5 0 ,则说明1 秒时间已到,程序 将关闭t o 计数器,然后对t o 中已计得的数据进行处理,然后再去进行显示, 否则直接转去显示。这部份的程序流程图如图3 一l 所示。 第三章系统程序设计和调试 3 1 秒信号子程序 2 数码管的显示 数码管显示采用动态方式,即每次中断点亮一位数码管,依次循环。由于数 码管共有5 位,因此,每2 0 m s 即可轮流点亮每个数码管一次,利用人的视觉 暂留现象,可以稳定地显示各位数码管的值。 图3 2 是显示部份的流程图,从图中可以看出,程序中利用了一个显示计数 器,该计数器的值在0 。4 之问变化,对应第一至第五位数码管,当计数值到5 时,即回零。下面以显示计数器值等于2 为例,加以说明。当显示计数器值等 于2 时,意味着此时应点亮第3 位数码管去进行显示。程序中首先取显示缓冲 区初值: m o va ,# d i s p b u f f 该值为5 a h ,加上显示计数器的值即5 c h : a d da ,c o u n t 因此将从5 c h 中取出待显示数据: m o vr o a 东南大学硕士学位论文 匝垂亟固 i 查字形码表 , 字形码送往p 0 重取计数值 上 查位码 上 送往p 2 口 重置定时初值 0 退出 图3 2 数码管显示流程图 m o va , r o 然后查字表码表,并将该字形码送往p o : m o vd p t r ,# d i s p t a b 第三章系统程序设计和调试 m o v ca , a + d p i r m o vp o ,a 因为p o 是段驱动。 下面是要点亮第3 位数码管,程序中再次取计数值,即2 ,然后查位码: m o va c o u n t b l o vd p t r ,# b it t a b m o v ca , a + d p t r 位码的值: b i t t a b :d b0 f d h ,0 f e h , 0 f b h ,o f 7 h , 0 e f h 因此,查出来的值是0 f b h ,即1 1 1 1 1 0 1 1 ,这个值被送往p 2 口: o r lp 2 ,# o o o l l l l lb:先将p 2 口的低5 位置l ( 关闭原点亮的数码 管) a n lp 2 ,a;将查得的位码与p 2 相与,点亮相应的数码管 观察硬件,即可发现p 2 2 驱动第3 位数码管,因此即实现了点亮第三位数 码管的要求,而其他各位不被点亮。 这种处理方法使得该程序具有很强的通用性,只要改变计数值,改变位码表, 即可用于不同位数、不同接法的数码管驱动。 3 2 系统流程 本系统的主程序参考图3 3 ,在完成初始化工作以后,即循环等待,每l s 时间到之后,t 1 中断程序将会读取t o 中的计数值,并将其放入约定的存储单 元中,并且置位“要求计算”的标志,当该标志位为l 时,主程序即转入计算, 第一步将1 6 进制数的结果转化为b c d 码,第二步,将b c d 码转化并送入显示缓 冲区。 东南大学硕士学位论文 3 3 程序调试及固化 图3 3 主程序流程图 单片机应用系统的程序必须有调试好的应用程序,系统才能运行。通常,单 片机的开发工具至少需要仿真机和编程器两种,前者用以调试程序,后者用于 将调试完成后的程序代码写入单片机芯片中。 3 3 1 单片机开发平台简介 单片机开发工具的作用有这样一些:p 】 ( 1 ) 有较齐全的开发软件工具,如配置有汇编语言,用户可用汇编语言编制应用软件。开 发工具能自动生成目标文件:配有反汇编软件,能将目标程序转换为汇编语言程序文本;有 丰富的子程序库可供用户调用。 ( 2 ) 有全速跟踪调试、运行的能力开发装置占用单片机硬件资源少。并具有单步运行、设 断点运行、状态查询等功能。 ( 3 ) 能进行系统硬件电路的诊断与检查:为了方便模快化软件调试,还应配置软件转储、 程序文本打印、能将程序固化到单片机j 占片或系统f l a s hr o m 芯片中。 第三章幂坑程庠设计和调试 3 32 本系统开发平台 1 k e i lc 5 l 软件集成开发环境”1 随着单片机开发技术的不断发展,单片机的开发软件也在不断发腱,k e - l 软件是目前流行的用于开发5 1 系列单片机的软件。该软件提供了包括c 编泽 器、宏汇编、链接器、库管理和一个功能强大的仿真调试器等在内的完整开发 方案,透过一个集成开发环境( ”v 洒o n ) 将这些莽分组合在一起。运行k e i i 软件需要p e n t i u m 或以上的c p u ,1 6 m b 或更多r a m 、2 0 m bl 噩七空闲的硬盘 空间、w i n 9 8 、n t 、

温馨提示

  • 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
  • 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
  • 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
  • 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
  • 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
  • 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
  • 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。

评论

0/150

提交评论