基于单片机的数字测速仪设计内容摘要:

路 对 PWM 脉宽速度调整来控制电机转速的大小,实现对不同速度的电机的转速的测量。 常州大学 本科 生 毕业设计(论文) 第 3 页 共 42 页 2 系统分析与总体 设计 方案 数字测速仪的基本 工作 原理 数字测速仪的的 红外传感器 的 发射 管 发出一种无色透明的红外光线 , 当光线照射到所给定的 电机 转盘中时,随着照射转盘上颜色的不断变化, 它的电路上的电阻会随着接收到红外光的多少而变化。 当红外线 照 到黑色部分时,由于黑色吸光, 红外发射管发出的光照射在上面后反射的部分就较小,接收管接收到的红外线也就较少,表现为电阻比较大,通 过外接的电路就可以读出检测的状态,同理当照射在白色表面时发射的红外线就比较多,表现为接收管的电阻就比较小。 当电阻从小到大变化时, LM339 比较器的输出电压也随之变化,当电机连续转动时, LM339 比较器就源源不断的输出脉冲。 通过单片机内部时钟计时,并且对得到的脉冲 每个跳变不断 计数 , 经过内部计算之后, 最终 将实时转数在液晶 1602 上显示 出来。 同时, 通过电机驱动模块 L298 改变电机转数。 当转速超过一定速度时,电路的报警系统会立刻进行报警。 数字测速仪的整体 设计结构 系统的硬件结构框图如图 所示。 该系统由 AT89S52 单片机、 红外测速模块 、电机驱动电路、 显示电路、报警电路等部分组成。 系统 以 一对红外发射和接收二极管形成光路 , 通过 照射到 齿盘 上颜色的变化 对光路形成脉冲 , 单片机采用同步 M/T 法对脉冲计 数, , 经过内部数据处理得 出转速 ,并 通过 1602 液晶显示器显示出结果。 同时当转速超过其所设定的数值时,系统对其进行报警。 通过 L298N 电路调节电机转速,从而实现在一个电机上对 低转速和高转速的测量。 , 图 数字测速仪 系统框图 AT 89 S 52单片机调速按键电路系统复位系统时钟液晶显示电路蜂鸣器报警电路红外传感器测速模块电机常州大学 本科 生 毕业设计(论文) 第 4 页 共 42 页 数字测速仪 的测量方案的分析 转速测量方案论证 方案一:采用记数法。 具体是通过单片机记单位时间 S(秒)内的脉冲数 N, 则转子 的 每分钟的转速: M=N/S60。 方案二:采用定时 法。 是通过定时器记录脉冲的周期 T,这样每分钟的转速: M=60/T。 比较两个方案, 记数法测量的数据只是某一秒的转子的转速。 不能代表所测物体的整体平均速度。 方案二,所测转速为物体在一段时间内的速度,具有代表性。 由此明显看出 ,方案二在测量精度及提高系统控制灵敏度等方面优于方案一,所以本设计采用方案二。 电机驱动方案论证 方案一:采 用 电磁 继电器对电机的开或关 状态 进行控制,通过切换 状态 对电机的速度进行调整。 这个方案的优点是电路简单,缺点是 电磁 继电器的 电路 响应时间慢、 频繁使用, 机械结构易损坏、寿命较短、可靠性不高。 方案 二 : 采用 小型直流电机驱动芯片。 这个方案的优点是驱动电路简单 明了 , 容易上手, 几乎不 需要加任何 其它外围元件就可以实现 对电机 稳定的控制,使得 整个 驱动电路 的功耗 较小,而且 此类芯片在 市场上种类齐全,价格也 相对较 便宜。 方案三:采用由达林顿管组成的 H 型 PWM 电路。 用 AT89S52 单片机 控制达林顿管令其 工作在占空比可调的开关状态, 从而可 以 精确调整电动机转速。 缺点是电路相对较为复杂些,设计要求较高,目前学生水平不容易实现 通过比较和对市场因素的考虑,本设计采用方案二 ,使系统的设计核心在 PWM 控制上。 键盘显示方案论证 方案一:采用 2*2 键盘,可直接输入 速度 设定值。 显示部分使用 4 位数码管,优点是显示简单明了 ,缺点是 显示单一, 功耗大,不符合智能化趋势而且不美观。 方案二:使用 2 个按键,进行逐位 电机调速 设置。 显示部分是使用支持中文显示的1608LCD 液晶 ,优点是美观大方,有利于人机的互动以及显示丰富的内容 扩展;缺点是成本高,抗干扰能力 较 差。 为了系统 简单 容易扩展、操作 方便 以及美观 大方 ,本设计完全采用方案二。 PWM 软件实现方案论证 脉宽调制的方式有三种:定频调宽、定宽调频和调宽调频。 本设计采用了定频调宽方式,采用这种方式的优点是电动机在运转时比较稳定,并且在采用单片机产生 PWM脉冲的软件实现上比较方便。 对于实现方式则有两种方案。 方案一:采用定时器做为脉宽控制的定时方式,这一方式产生的脉冲宽度极其精确,误差只在几个 us。 方案二:采用软件延时方式,这一方式在精度上不及方案一,特别是在引入中断后,常州大学 本科 生 毕业设计(论文) 第 5 页 共 42 页 将有一定的误差。 但是基于不占 用定时器资源,且对于直流电机,采用软件延时所产生的定时误差在允许范围。 由于本设计采用了两片 AT89S52 单片机, MCU 资源充足,因此选择方案一。 转速测量原理 测频法 “M法 ” 在一定测量时间 T 内,测量脉冲发生器(替代输入脉冲)产生的脉冲数 m1来测量转速,如图 “ M”法测量转速脉冲所示,设在时间 T 内,转轴转过的弧度数为 Xτ ,则转速 n 可由下式表示: n= TX260 (1) 转轴转过的 弧度数 Xτ 可用下式所示 m1 Xpm12 (2) 图 “ M”法测量转速脉冲 将( 2)式代入( 1)式得 转速 n 的表达式为: n= TPm160 ( 3) P为转轴转一周脉冲发生器产生的脉冲数; n转速单位:(转 /分); T定时时间单位:(秒)。 在该方法中,测量精度是由于定时时间 T 和脉冲不能保证严格同步,以及在 T 内能否正好测量外部脉冲的完整的周期,可能产生的 1 个脉冲的量化误差。 因此,为了提高测量精度, T 要有足够长的时间。 定时时间可根据测量对象情况预先设置。 设置的时间过长,可以提高精度,但在转速较快的情况下,所计的脉冲数增大(码盘孔数已定情况下),限制了转速测量的量程。 而设置的时间过短,测量精度会受到一定的影响。 测周期法“ T 法” 转速可以用两脉冲产生的间隔宽度 TP 来决定。 用以采集数据的码盘,可以是单孔常州大学 本科 生 毕业设计(论文) 第 6 页 共 42 页 或多孔,对于单孔码盘测量两次脉冲间的时 间,就可测出转述数据, TP也可以用时钟脉冲数来表示。 对于多孔码盘,其测量的时间只是每转的 1/N, N 为码盘孔数。 如图 “ T”法脉宽测量所示。 TP 通过定时器测得。 定时器对时基脉冲 (频率为 fc)进行计数定时,在 TP内计数值若为 m2,则计算公式为: n=PPT60 ( 4) 即: 260Pmfn c ( 5) fc为硬件产生的基准时钟脉冲频率:单位( Hz); n转速单位:(转 /分); m2时基脉冲。 图 “ T”法脉宽测量 由 “ T”法脉宽测量可知“ T”法测量精度的误差主要有两个方面,一是两脉冲的上升沿触发时间不一致而产生的;二是计数和定时起始和关闭不一致而产生的。 因此要求脉冲的上升沿(或下降沿)陡峭和计数和定时严格同步。 测周法在低转速时精度较高,但随着转速的增加,精度变差,有小于一个脉冲 的误差存在。 测频测周法“ M/T 法” 所谓测频测周法,即是综合了“ T”法和“ M”法分别对高、低转速具有的不同精度,利用各自的优点而产生的方法,精度位于两者之间,如图 “ M/T”法定时 /计数测量所示。 “ M/T”法采用三个定时 /计数器,同时对输入脉冲、高频脉冲(由振荡器产生)、及预设的定时时间进行定时和计数, m1 反映转角, m2 反映测速的准确时间,通过计算可得转速值 n。 该法在高速及低速时都具有相对较高的精度。 测速时间 Td 由脉冲发生器脉冲来同步,即 Td 等于 m1个脉冲周期。 由图可见,从 a 点开始,计数器 对 m1和 m2 计数,到达 b 点,预定的测速时间时,单片机发出停止计数的指令,因为 Tc 不一定正好等于整数个脉冲发生器脉冲周期,所以,计数器仍对高频脉冲继续计数,到达 c 点时,脉冲发生器脉冲的上升沿使计数器停止,这样, m2就代表了 m1个脉冲周期的时间。 常州大学 本科 生 毕业设计(论文) 第 7 页 共 42 页 “ M/T”法综合了“ T”和“ M”两种方法,转速计算如下: 设高频脉冲的频率为 fc,脉冲发生器每转发出 P 个脉冲,由式( 2)和( 5)可得M/T 法转速计算公式为: 2160Pmmfn c (6) n转速值。 单位:(转 /分); fc晶体震荡频率:单位( Hz); m1输入脉冲数,反映转角; m2时基脉冲数。 图 “ M/T”法定时 /计数测量 通过上面的分析可知, M 法适合于高速测量,当转速越低,产生的误差会越大。 T法适合于低速测量,转速增高,误差增大。 M/T 这种转速测量方法的相对误差与转速 n无关,只与晶体振荡产生的脉冲有关,故可适合各种转速下的测量。 保证其测量精度的途径是增大定时时间 T,或提高时基脉冲的频率 fc。 因此,在实际操作时往往采用一种称变 M/T 的测量方法,即所谓变 M/T 法,在 M/T 法的基础上,让测量时间 Tc始终等于转速输入脉冲信号的周期之和。 并根据第一次的所测转速及时调整预测时间 Tc,兼顾高低转速时的测量精度。 基于 M 法测量速度,电路和程序均较为简单,且可以在一定的条件下满足精度的要求,所以本设计中采用 M/T 法进行测量。 常州大学 本科 生 毕业设计(论文) 第 8 页 共 42 页 3 系统硬件电路设计 整个单片机测量转速系统 包括 单片机控制模块、红外传感器信号采集模块、 电机驱动模块 、液晶显示模块和 报警模块 , 各个模块都承担着各自的任务。 控制模块 模块控制的选择 AT89S52 是一种低功耗、高性能 CMOS 8 位微控制器,具有 8K 在系统可编程 Flash 存储器。 使用 Atmel 公司高密度非易失性存储器技术制造,与工业 80C51 产品指令和引脚完全兼容。 片上 Flash 允许程序存储器在系统可编程,亦适于常规编程器。 在单芯片上,拥有灵巧的 8 位 CPU 和在系统可编程 Flash,使得 AT89S52 在众多嵌入式控制应用系统中得到广泛应用。 由于我们学习过 51 单 片机, 52 和 52 原理几乎相同,对它比较熟悉,在运用的时候就会比较熟练,所以选择了 AT89S52 单片机。 AT89S52 单片机介绍 AT89S52 单片机 由 数据总线、地址总线和控制总线 等三大总线组成, 中央处理 器( CPU) 、程序存储器 (ROM)、数据存储器 (RAM)、 并行和串行口, 定时 /计数器 等几大单元组成。 如图 所示 AT89S52 引脚排列。 图 AT89S52 引脚排列 AT89S52 具有以下标准功能: 8k 字节 Flash, 256 字节 RAM, 32 位 I/O 线,定时器,一个 6 向量 2 级中断结构 ,二 个数据指针,三个 16 位定时器 /计数器 , 片内晶振及时钟电路。 另外, AT89S52 可降至 0Hz 静态逻辑操作,支持 2 种 软件 可选择节电模式。 常州大学 本科 生 毕业设计(论文) 第 9 页 共 42 页 空闲模式下, CPU 停止工作,允许 RAM、定时器 /计数器、串口、中断 继续工 作。 掉电保护方式下, RAM 内容被保存,振荡器被冻结, 单片机一切工作停止,直到下一个中断或硬件复位为止。 具体对单片机的引脚 和功能 进行说明。 ( 1) P0 口 : P0 口为一个 8 位漏级开路双向 I/O 口,每脚可吸收 8TTL 门电流。 当P0 口的管脚第一次写 1 时,被定义为 高阻 输入。 P0 能够用于外部程序数据存储器,它可以被定义为数据 /地址的第八位。 在 FIASH 编程时, P0 口作为原码输 入口,当 FIASH进行校验时, P0 输出原码,此时 P0 外部必须被拉高。 ( 2) P1 口 : P1 口是。
阅读剩余 0%
本站所有文章资讯、展示的图片素材等内容均为注册用户上传(部分报媒/平媒内容转载自网络合作媒体),仅供学习参考。 用户通过本站上传、发布的任何内容的知识产权归属用户或原始著作权人所有。如有侵犯您的版权,请联系我们反馈本站将在三个工作日内改正。