电机测速与控制论文_第1页
电机测速与控制论文_第2页
电机测速与控制论文_第3页
电机测速与控制论文_第4页
电机测速与控制论文_第5页
已阅读5页,还剩34页未读 继续免费阅读

下载本文档

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

文档简介

成都电子机械高等专科学校电气与电子工程系 毕业设计论文 0 毕业设计 论文 毕业设计 论文 题题目目 电机测速与控制电机测速与控制 专专业业 应用电子技术应用电子技术 班班级级 09221 学学号号 36 姓姓名名 贺宗建贺宗建 指导老师指导老师 曾一江曾一江 成都电子机械高等专科学校 二 一二年五月 成都电子机械高等专科学校电气与电子工程系 毕业设计论文 1 摘摘 要要 在工业生产中 常会遇到各种需要测量转速的场合 转速是指作圆周运动的物体 在单位时间内所转过的圈数 其大小及变化往往意味着机器设备运转的正常与否 因此 转速 测量一直是工业领域的一个重要问题 例如在发动机 电动机 机床主轴等旋转设备 的运转和控制中 常需要实时监控其转速以便随时调整生产方案 在使用模拟技 术制作测速表时 常用测速发电机的方法 即利用传感器测得电机转动脉冲 利 用脉冲计算每分钟点击转速 这次设计内容包含知识全面 在测量系统中能学到关于测量转速的传感 器采样问题 单片机部分的内容 显示部分等各个模块的通信和联调 全面了解 单片机和信号放大的具体内容 进一步锻炼我们在信号采集 处理 显示方面的 实际工作能力 关键词 关键词 电动机 单片机 传感器 设计要求 设计要求 1 采用单片机作为控制器实现电机的测速 加速 减速控制 2 测速结果在液晶屏或者 LED 上显示 3 液晶屏上同时能显示实时时钟 成都电子机械高等专科学校电气与电子工程系 毕业设计论文 2 目目录录 概述概述 3 单片机单片机 AT89C51AT89C51 简介简介 4 复位电路 7 晶振电路 10 按键控制模块按键控制模块 11 显示部分设计显示部分设计 13 管脚接线 13 指令功能 13 时钟实时显示功能时钟实时显示功能 14 电机驱动电机驱动 15 四相步进电机工作原理 16 传感器选择传感器选择 17 霍尔传感器 17 光电传感器 18 转速测量方法转速测量方法 19 转速测量原理 19 系统软件设计系统软件设计 20 主程序初始化 20 程序框图 22 调试步骤 26 全电路仿真全电路仿真 29 总结总结 30 致谢致谢 30 参考文献参考文献 31 附录程序代码附录程序代码 32 成都电子机械高等专科学校电气与电子工程系 毕业设计论文 3 概概述述 目前测量电机转速的方法很多 按照不同的理论方法 先后产生过模拟测 速法 如离心式转速表 用电机转矩或者电机电枢电动势计算所得 同步测 速法 如机械式或闪光式频闪测速仪 以及计数测速法 计数测速法又可分为 机械式定时计数法和电子式定时计数法 传统的电机转速检测多采用测速发 电机或光电数字脉冲编码器 也有采用电磁式 利用电磁感应原理或可变磁阻 的霍尔元件等 电容式 对高频振荡进行幅值调制或频率调制 等 还有一些 特殊的测速器是利用置于旋转体内的放射性材料来发生脉冲信号 其中应用最广的是光电式 光电式测系统具有低惯性 低噪声 高分辨率 和高精度的优点 加之激光光源 光栅 光学码盘 CCD 器件 光导纤维等 的相继出现和成功应用 使得光电传感器在检测和控制领域得到了广泛的应 用 而采用光电传感器的电机转速测量系统测量准确度高 采样速度快 测 量范围宽和测量精度与被测转速无关等优点 具有广阔的应用前景 单单 片片 机机 晶振电路晶振电路 复位电路复位电路 按键控制按键控制 加速加速 减速减速 显示转换显示转换 LCD 显示显示 电机驱动电机驱动 转速采集转速采集 实时时钟实时时钟 实现模块实现模块 成都电子机械高等专科学校电气与电子工程系 毕业设计论文 4 设计整体思路框图 各部分模块的功能各部分模块的功能 单片机 整个设计的核心部分 对各个模块进行控制 对数据进行处理 晶振电路 提供基准频率 复位电路 对单片机进行初始化处理 控制模块 对需要实现的功能进行控制与转换切换 显示模块 通过液晶显示器 LCD 对转速 时钟进行显示 电机驱动 用放大电路对电机进行驱动 使电动机运转 转速采集 通过传感器采集电机转速信号送入单片机处理 时钟模块 实现时钟显示的核心 具有计时功能 单片机单片机 AT89C52AT89C52 介绍介绍 AT89C51 是一种带 8K 字节闪烁可编程可擦除只读存储器 FPEROM Falsh Programmable and Erasable Read Only Memory 的低电压 高性能 CMOS8 位 微处理器 俗称单片机 该器件采用 ATMEL 高密度非易失存储器制造技术制造 与工业标准的 MCS 51 指令集和输出管脚相兼容 由于将多功能 8 位 CPU 和闪烁 存储器组合在单个芯片中 ATMEL 的 AT89C52 是一种高效微控制器 为很多嵌入 式控制系统提供了一种灵活性高且价廉的方案 这是常用的一种单片机 型号为 AT89C52 它将计算机的功能都集成到这个 芯片内部去了 就这么一个小小的芯片就能构成一台小型的电脑 因此叫做单 片机 AT89C51 芯片 它有 40 个管脚 分成两排 每一排各有 20 个脚 其中左下角 标有箭头的为第 1 脚 然后按逆时针方向依次为第 2 脚 第 3 脚 第 40 脚 在 40 个管脚中 其中有 32 个脚可用于各种控制 比如控制小灯的亮与灭 控制电机的正转与反转 控制电梯的升与降等 这 32 个脚叫做单片机的 端口 在单片机技术中 每个端口都有一个特定的名字 比如第一脚的那个端口叫做 P1 0 成都电子机械高等专科学校电气与电子工程系 毕业设计论文 5 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 时 其管脚被内部上拉电阻拉高 且 成都电子机械高等专科学校电气与电子工程系 毕业设计论文 6 作为输入 并因此作为输入时 P2 口的管脚被外部拉低 将输出电流 这是由 于内部上拉的缘故 P2 口当用于外部程序存储器或 16 位地址外部数据存储器进 行存取时 P2 口输出地址的高八位 在给出地址 1 时 它利用内部上拉优势 当对外部八位地址数据存储器进行读写时 P2 口输出其特殊功能寄存器的内容 P2 口在 FLASH 编程和校验时接收高八位地址信号和控制信号 P3 口 P3 口管脚是 8 个带内部上拉电阻的双向 I O 口 可接收输出 4 个 TTL 门电流 当 P3 口写入 1 后 它们被内部上拉为高电平 并用作输入 作 为输入 由于外部下拉为低电平 P3 口将输出电流 ILL 这是由于上拉的缘故 P3 口也可作为 AT89C51 的一些特殊功能口 P3 口管脚备选功能 P3 0 RXD 串行输入口 P3 1 TXD 串行输出口 P3 2 INT0 外部中断 0 P3 3 INT1 外部中断 1 P3 4 T0 记时器 0 外部输入 P3 5 T1 记时器 1 外部输入 P3 6 WR 外部数据存储器写选通 P3 7 RD 外部数据存储器读选通 P3 口同时为闪烁编程和编程校验接收一些控制信号 RST 复位输入 当振荡器复位器件时 要保持 RST 脚两个机器周期的 高电平时间 ALE PROG 当访问外部存储器时 地址锁存允许的输出电平用于锁存地 址的地位字节 在 FLASH 编程期间 此引脚用于输入编程脉冲 在平时 ALE 端以不变的频率周期输出正脉冲信号 此频率为振荡器频率的 1 6 因此它可用 作对外部输出的脉冲或用于定时目的 然而要注意的是 每当用作外部数据存 储器时 将跳过一个 ALE 脉冲 如想禁止 ALE 的输出可在 SFR8EH 地址上置 0 此时 ALE 只有在执行 MOVX MOVC 指令时 ALE 才起作用 另外 该引脚被略微 拉高 如果微处理器在外部执行状态 ALE 禁止 置位无效 PSEN 外部程序存储器的选通信号 在由外部程序存储器取指期间 每个机器周期两次 PSEN 有效 但在访问外部数据存储器时 这两 次有效的 PSEN 信号将不出现 成都电子机械高等专科学校电气与电子工程系 毕业设计论文 7 EA VPP 当 EA 保持低电平时 则在此期间外部程序存储器 0000H FFFFH 不管是否有内部程序存储器 注意加密方式 1 时 EA 将内部锁定为 RESET 当 EA 端保持高电平时 此间内部 程序存储器 在 FLASH 编程期间 此引脚也用于施加 12V 编程电 源 VPP XTAL1 反向振荡放大器的输入及内部时钟工作电路的输入 XTAL2 来自反向振荡器的输出 3 振荡器特性 XTAL1 和 XTAL2 分别为反向放大器的输入和输出 该反向放大器可 以配置为片内振荡器 石晶振荡和陶瓷振荡均可采用 如采用外部时钟 源驱动器件 XTAL2 应不接 有余输入至内部时钟信号要通过一个二分 频触发器 因此对外部时钟信号的脉宽无任何要求 但必须保证脉冲的 高低电平要求的宽度 4 芯片擦除 整个 PEROM 阵列和三个锁定位的电擦除可通过正确的控制信号组 合 并保持 ALE 管脚处于低电平 10ms 来完成 在芯片擦操作中 代码 阵列全被写 1 且在任何非空存储字节被重复编程以前 该操作必须被 执行 此外 AT89C51 设有稳态逻辑 可以在低到零频率的条件下静态逻辑 支持两种软件可选的掉电模式 在闲置模式下 CPU 停止工作 但 RAM 定 时器 计数器 串口和中断系统仍在工作 在掉电模式下 保存 RAM 的内容 并且冻结振荡器 禁止所用其他芯片功能 直到下一个硬件复位为止 复位电路复位电路 MCS 51单片机复位电路是指单片机的初始化操作 单片机启运运行时 都 需要先复位 其作用是使 CPU 和系统中其他部件处于一个确定的初始状态 并从 这个状态开始工作 因而 复位是一个很重要的操作方式 但单片机本身是不能 自动进行复位的 必须配合相应的外部电路才能实现 成都电子机械高等专科学校电气与电子工程系 毕业设计论文 8 复位电路 复位功能 复位电路的基本功能是 系统上电时提供复位信号 直至系统电源稳定 后 撤销复位信号 为可靠起见 电源稳定后还要经一定的延时才撤销复位信 号 以防电源开关或电源插头分 合过程中引起的抖动而影响复位 单片机的复位是由外部的复位电路来实现的 片内复位电路是复位引脚 RST 通过一个斯密特触发器与复位电路相连 斯密特触发器用来抑制噪声 它的输 出在每个机器周期的 S5P2 由复位电路采样一次 复位电路通常采用上电自动 复位 如图 a 和按钮复位 如图 b 两种方式 RC 复位电路 成都电子机械高等专科学校电气与电子工程系 毕业设计论文 9 单片机复位后的状态 单片机的复位操作使单片机进入初始化状态 其中包括使程序计数器 PC 0000H 这表明程序从 0000H 地址单元开始执行 单片机冷启动后 片内 RAM 为随机值 运行中的复位操作不改变片内 RAM 区中的内容 21 个特殊功能寄存 器复位后的状态为确定值 寄存器复位后状态表 特殊功能寄存器初始状态特殊功能寄存器初始状态 A B PSW 00H 00H 00H TMOD TCON TH0 00H 00H 00H SP DPL DPH P0 P3 IP IE 07H 00H 00H FFH 00000B 0 00000B TL0 TH1 TL1 SBUF SCON PCON 00H 00H 00H 不定 00H 0 B PSW 00H 表明选寄存器 0 组为工作寄存器组 SP 07H 表明堆栈指针 指向片内 RAM 07H 字节单元 根据堆栈操作的先加后压法则 第一个被压入的 内容写入到 08H 单元中 Po P3 FFH 表明已向各端口线写入 1 此时 各端口 既可用于输入又可用于输出 IP 00000B 表明各个中断源处于低优先 级 IE 0 00000B 表明各个中断均被关断 系统复位是任何微机系统执 行的第一步 使整个控制芯片回到默认的硬件状态下 51 单片机的复位是由 RESET 引脚来控制的 平则执行芯片内部的程序代码 若为低电平便会执行外部程序 51 单片机在系统复位时 将其内部的一些重要 寄存器设置为特定的值 至于内部 RAM 内部的数据则不变 此引脚与高电平相 成都电子机械高等专科学校电气与电子工程系 毕业设计论文 10 接超过 24 个振荡周期后 51 单片机即进入芯片内部复位状态 而且一直在此状 态下等待 直到 RESET 引脚转为低电平后 才检查 EA 引脚是高电平或低电平 若为高电 晶振电路晶振电路 晶振是晶体振荡器的简称 在电气上它可以等效成一个电容和一个电 阻并联再串联一个电容的二端网络 电工学上这个网络有两个谐振点 以频率 的高低分其中较低的频率是串联谐振 较高的频率是并联谐振 AT89C51 单片机内部有一个用于构成振荡器的高增益反相放大器 引脚 XTAL1 和 XTAL2 分别是此放大器的输入端和输出端 这个放大器与作为反馈元件 的片外晶体谐振器一起构成一个自激振荡器 外接晶体谐振器以及电容 C1 和 C2 构成并联谐振电路 接在放大器的反馈回路中 对外接电容的值虽然没有严格 的要求 但电容的大小会影响震荡器频率的高低 震荡器的稳定性 起振的快 速性和温度的稳定性 因此 此系统电路的晶体振荡器的值为 12MHz 电容应尽 可能的选择陶瓷电容 电容值约为 30 F 在焊接刷电路板时 晶体振荡器和电 容应尽可能安装得与单片机芯片靠近 以减少寄生电容 更好地保证震荡器稳 定和可靠地工作 晶振有一个重要的参数 那就是负载电容值 选择与负载电容值相等的并 联电容 就可以得到晶振标称的谐振频率 晶振电路 成都电子机械高等专科学校电气与电子工程系 毕业设计论文 11 按键控制按键控制 控制模块采用 74LS148 优先编码器 其 为 8 线 3 线优先编码器 共有 54 74148 和 54 74LS148 两种线路结构型式 将 8 条数据线 0 7 进行 3 线 4 2 1 二进制 八进制 优先编码 即对最高位数据线进行 译码 利用选通端 EI 和输出选通端 EO 可进行八进制扩展 通过按键实现 LCD 显示电机转速和实时时钟切换 同时通过按键实现 加速 减速控制 优先编码器实物图 0 7 编码输入端 低电平有效 EI 选通输入端 低电平有效 A0 A1 A2 编码输出端 低电平有效 GS 宽展端 低电平有效 EO 选通输出端 优先编码器管脚 成都电子机械高等专科学校电气与电子工程系 毕业设计论文 12 输入输出 EI01234567A2A1A0GSEO HXXXXXXXXHHHHH LHHHHHHHHHHHHL LXXXXXXXLLLLLH LXXXXXXLHLLHLH LXXXXXLHHLHLLH LXXXXLHHHLHHLH LXXXLHHHHHLLLH LXXLHHHHHHLHLH LXLHHHHHHHHLLH LLHHHHHHHHHHLH H 高电平 L 低电平 X 任意 优先编码器功能表优先编码器功能表 此设计中占用第 4 5 6 7 线输入 当任意端口按键按下有低电平输入 都将 通过 P1 口输给单片机处理 译码结果 减速按键 4 口 011 加速按键 5 口 010 时钟按键 6 口 001 转速按键 7 口 000 成都电子机械高等专科学校电气与电子工程系 毕业设计论文 13 显示部分设计显示部分设计 1 液晶显示简介 本设计显示部分采用 lcd1602 显示芯片 1602 芯片字符型液晶显示模块是 一种专门用于显示字母 数字 符号等点阵式 LCD 管脚接线功能 管脚接线功能 第 1 脚 VSS 为地电源 第 2 脚 VDD 接 5V 正电源 第 3 脚 V0 为液晶显示器对比度调整端 接正电源时对比度最弱 接地电 源时对比度最高 对比度过高时会产生 鬼影 使用时可以通过一个 10K 的电 位器调整对比度 第 4 脚 RS 为寄存器选择 高电平时选择数据寄存器 低电平时选择指令 寄存器 第 5 脚 RW 为读写信号线 高电平时进行读操作 低电平时进行写操作 当 RS 和 RW 共同为低电平时可以写入指令或者显示地址 当 RS 为低电平 RW 为高 电平时可以读忙信号 当 RS 为高电平 RW 为低电平时可以写入数据 第 6 脚 E 端为使能端 当 E 端由高电平跳变成低电平时 液晶模块执行 命令 第 7 14 脚 D0 D7 为 8 位双向数据线 第 15 16 脚 空脚 1602 液晶模块内部的字符发生存储器 CGROM 已经存储了 160 个不同的点 阵字符图形 如表 1 所示 这些字符有 阿拉伯数字 英文字母的大小写 常用 的符号 和日文假名等 每一个字符都有一个固定的代码 指令功能 指令功能 指令1 清显示 指令码01H 光标复位到地址00H位置 指令2 光标复位 光标返回到地址00H 指令3 光标和显示模式设置 I D 光标移动方向 高电平右移 低电平左移 S 屏幕上所有文字是否左移或者右移 高电平表示有效 低电平则无效 指令4 显示开关控制 D 控制整体显示的开与关 高电平表示开显示 低电 平表示关显示 C 控制光标的开与关 高电平表示有光标 低电平表示 无光标 B 控制光标是否闪烁 高电平闪烁 低电平不闪烁 指令5 光标或显示移位 S C 高电平时移动显示的文字 低电平时移动光标 指令6 功能设置命令 DL 高电平时为4位总线 低电平时为8位总线 N 低电平 时为单行显示 高电平时双行显示 F 低电平时显示5x7的点阵字符 高 电平时显示5x10的点阵字符 有些模块是 DL 高电平时为8位总线 低 电平时为4位总线 指令7 字符发生器RAM地址设置 指令8 DDRAM地址设置 指令9 读忙信号和光标地址 BF 为忙标志位 高电平表示忙 此时模块不能接 收命令或者数据 如果为低电平表示不忙 指令10 写数据 指令 11 读数据 成都电子机械高等专科学校电气与电子工程系 毕业设计论文 14 2 动态显示仿真 时钟实时功能实现时钟实时功能实现 本设计时钟显示通过 DS1302 芯片完成 它可以对年 月 日 周日 时 分 秒进行计时 具有闰年补偿功能 工作电压为 2 5V 5 5V DS1302 的引脚 排列 其中 Vcc1 为后备电源 VCC2 为主电源 在主电源关闭的情况下 也能保 持时钟的连续运行 DS1302 与 CPU 的连接需要三条线 即 SCLK 7 I O 6 RST 5 实际上 在调试程序时可以不加电容器 只加一个 32 768kHz 的晶振即可 DS1302 与微处理器进行数据交换时 首先由微处理器向电路发送命令字节 命令字节最高位 MSB D7 必须为逻辑 1 如果 D7 0 则禁止写 DS1302 即写保护 D6 0 指定时钟数据 D6 1 指定 RAM 数据 D5 D1 指定输入或输出的特定寄 存器 最低位 LSB D0 为逻辑 0 指定写操作 输入 D0 1 指定读操作 输出 在 DS1302 的时钟日历或 RAM 进行数据传送时 DS1302 必须首先发送命令字 节 若进行单字节传送 8 位命令字节传送结束之后 在下 2 个 SCLK 周期的上 升沿输入数据字节 或在下 8 个 SCLK 周期的下降沿输出数据字节 DS1302 与 RAM 相关的寄存器分为两类 一类是单个 RAM 单元 共 31 个 每个 单元组态为一个 8 位的字节 其命令控制字为 C0H FDH 其中奇数为读操作 偶数为写操作 再一类为突发方式下的 RAM 寄存器 在此方式下可一次性读 写 所有的 RAM 的 31 个字节 成都电子机械高等专科学校电气与电子工程系 毕业设计论文 15 DS1302 抓图 电机驱动 电机驱动 在设计中采用光电传感器采集信号 这种传感器是把旋转轴的转速变为相应频率的脉冲 然 后用测量电路测出频率 由频率值就可知道所侧转速值 这种测量方法具有传感器结构简单 可靠 测量精度高的特点 是目前常用的一种测量转速的方法 本设计采用单片机输送 4 路信号 通过反向处理送入 ULN2003A 芯片 成都电子机械高等专科学校电气与电子工程系 毕业设计论文 16 ULN2003A 芯片主要功能是放大 由于产生的电压信号很小 所以要进行放大处 理 一般要放大至少 1000 倍 60dB 然后再进行信号处理工作 通过 P2 口 4 个端口提供 4 相电 经过反向输入 ULN2003A 芯片处理放大以驱动电机转动 电机驱动抓图 四相步进电机工作原理 四相步进电机工作原理 四相步进电机 采用单极性直流电源供电 只要对步进电机的各相绕组按合适的 时序通电 就能使步进电机步进转动 下图是该四相反应式步进电机工作原理示 意图 步进电机工作原理示意图步进电机工作原理示意图 开始时 开关 SB 接通电源 SA SC SD 断开 B 相磁极和转子 0 3 号齿对 齐 同时 转子的 1 4 号齿就和 C D 相 绕组磁极产生错齿 2 5 号齿就和 D A 相绕组磁极产生错齿 成都电子机械高等专科学校电气与电子工程系 毕业设计论文 17 当开关 SC 接通电源 SB SA SD 断开时 由于 C 相绕组的磁力线和 1 4 号齿之间磁力线的作用 使转子转动 1 4 号齿和 C 相绕组的磁极对齐 而 0 3 号齿和 A B 相绕组产生错齿 2 5 号齿就和 A D 相绕组磁极产生错齿 依次 类推 A B C D 四相绕组轮流供电 则转子会沿着 A B C D 方向转动 四相步进电机按照通电顺序的不同 可分为单四拍 双四拍 八拍三种 工作方式 单四拍与双四拍的步距角相等 但单四拍的转动力矩小 八拍工作方 式的步距角是单四拍与双四拍的一半 因此 八拍工作方式既可以保持较高的转 动力矩又可以提高控制精度 单四拍 双四拍与八拍工作方式的电源通电时序与波形分别如图 a b c 所示 步进电机工作时序波形图步进电机工作时序波形图 传感器选择 传感器选择 转速测量的方案选择 一般要考虑传感器的结构 安装以及测速范围与环境 条件等方面的适用性 再就是二次仪表的要求 除了显示以外还有控制 通讯和远 传方面的要求 经过我和同组同学查资料 构思和自己的设计 总体电路我们 有两套设计方案 部分重要模块也考虑了其它设计方法 经过分析 从实现难 度 熟悉程度 器件用量等方面综合考虑 我们才最终选择了光电传感器 霍尔传感器霍尔传感器 霍尔传感器是利用霍尔效应进行工作的 其核心元件是根据霍尔效应原理 制成的霍尔元件 本文介绍一种泵驱动轴的转速采用霍尔转速传感器测量 传感器的定子上有 2 个互相垂直的绕组 A 和B 在绕组的中心线上粘有霍 尔片HA 和HB 转子为永久磁钢 霍尔元件HA 和HB 的激励电机分别与绕组A 和 B 相连 它们的霍尔电极串联后作为传感器的输出 成都电子机械高等专科学校电气与电子工程系 毕业设计论文 18 霍尔转速传感器的结构原理图 霍尔转速传感器的接线图 缺点 采用霍尔传感器在信号采样的时候 会出现采样不精确 因为它是 靠磁性感应才采集脉冲的 使用时间长了会出现磁性变小 影响脉冲的采样精 度 光电传感器光电传感器 整个测量系统的组成框图如图所示 从图中可见 转子由一直流调速电 机驱动 可实现大转速范围内的无级调速 转速信号由光电传感器拾取 使用 时应先在转子上做好光电标记 具体办法可以是 将转子表面擦干净后用黑 漆 或黑色胶布 全部涂黑 再将一块反光材料贴在其上作为光电标记 然后 将光电传感器 光电头 固定在正对光电标记的某一适当距离处 光电头采 用低功耗高亮度 LED 光源为高可靠性可见红光 无论黑夜还是白天 或是背 景光强有大范围改变都不影响接收效果 光电头包含有前置电路 输出 0 成都电子机械高等专科学校电气与电子工程系 毕业设计论文 19 5V 的脉冲信号 接到单片机 89C51 的相应管脚上 通过 89C51 内部定时 计 时器 T0 T1 及相应的程序设计 组成一个数字式转速测量系统 测量系统的组成框图 优点 这种方案使用光电转速传感器具有采样精确 采样速度快 范围广 的特点 转速测量方法转速测量方法 被 测 物传 感 器单 片 机LCD 显 示 测速原理图 计数测速法又可分为机械式定时计数法和电子式定时计数法 本设计采用 单片机和光电传感器组成的高精度转速测量系统 其转速测量方法采用的是电 子式定时计数法 对转速的测量实际上是对转子旋转引起的周期脉冲信号的频率进行测量 在频率的工程测量中 电子式定时计数测量频率的方法 在一定时间间隔t内 计数被测信号的脉冲重复变化次数N 则被测信号的 频率 f 可表示为 f N t 转速测量原理转速测量原理 转速测量系统 多采用光电传感器 从转轴上预先粘贴的一个标志上获得一 转一个转速脉冲 随后利用电子倍频器和测频方法实现转速测量 可以在微处理 成都电子机械高等专科学校电气与电子工程系 毕业设计论文 20 器的参与下 通过测量转轴的转动一圈截获一次光电脉冲信号 换算出转轴的频 率或转速 即通过速度传感器 将转速信号变为电脉冲 利用微机在单位时间内 对脉冲进行计数 再经过软件计算获得转速数据 即 V N mT V 转速 单位 转 分钟 N 采样时间内所计脉冲个数 T 采样时间 单位 分钟 m 每旋转一周所产生的脉冲个数 如果 m 60 那么 1 秒钟内脉冲个数 N 就是转速 n 即 V N mT N 60 1 60 N 系统软件设计系统软件设计 硬件电路完成以后 进行系统软件设计 首先要分析系统对软件的要 求 然后进行软件的总体的设计 包括程序的总体设计和对程序的模块化设计 按整体功能分为多个不同的模块 单独设计 编程 调试 然后将各个模块装 配联调 组成完整的软件 根据设计的要求 单片机的任务是 内部进行计数 在计算出速度后 显示 软件编程用 C 语言完成的 需要能掌握 C 语言 还要熟练 AT89C51 单片 机 从程序流程图 编写程序 编译 到最后的调试 是很复杂的 主程序初始化主程序初始化 1 定时器的初始化 AT89C51 有两个定时器 计数器 T0 和 T1 每个定时器 计数器均可设置 成为 16 位 也可以设置成为 13 位进行定时或计数 计数器的功能是对 T0 或 T1 外来脉冲的进行计数 外部输入脉冲负跳变时 计数器进行加 1 定时功能是通过计数器的计数来实现的 每个机器周期产生 1 个计数 脉冲 即每个机器周期计数器加 1 因此定时时间等于计数个数乘以机器周期 定时器工作时 每接收到 1 个计数脉冲 或机器周期 则在设定的初值基础上 成都电子机械高等专科学校电气与电子工程系 毕业设计论文 21 自动加 1 当所有位都为 1 时 再加 1 就会产生溢出 将向 CPU 提出定时器溢出 中断申请 当定时器采用不同的工作方式和设置不同的初值时 产生溢出中断 的定时值和计数值将不同 从而可以适应不同的定时或计数控制 定时器有 4 种工作方式 方式 0 方式 1 方式 2 和方式 3 工作方式寄存器 TMOD 的设定 GATEC TM1 M0GATEC TM1M0 TMOD 各位的含义如下 GATE 门控位 用于控制定时 计数器的启动是否受外部中断请求信号的 影响 C T 定时或计数方式选择位 当 C T 1 时工作于计数方式 当 C T 0 时工作 于定时方式 M1 M0 为工作方式选择位 用于对 T0 的四种工作方式 T1 的三种工作 方式进行选择 选择情况如下表 M1M0 00 为方式 0 M1M0 01 为方式 1 表 5 1M1 M0 为工作方式选择位 MOM1工作 方式 方式说明 0 0 1 1 0 1 0 1 0 1 2 3 13 位定时 计数器 16 位定时 计数器 8 位自动重置定时 计数器 两个 8 位定时 计数器 只有 T0 有 2 中断允许控制 MCS 51 单片机中没有专门的开中断和关中断指令 对各个中断源的允许和 屏蔽是由内部的中断允许寄存器 IE 的各位来控制的 中断允许寄存器 IE 的字 节地址为 A8H 可以进行位寻址 EA 中断允许总控位 EA 0 屏蔽所有的中断请求 EA 1 开放中断 ET2 定时器 计数器 T2 的溢出中断允许位 ES 串行口中断允许位 ET1 定时器 计数器 T1 的溢出中断允许位 EX1 外部中断 INT1 的中断允许位 ET0 定时器 计数器 T0 的溢出中断允许位 EX0 外部中断 INT0 的中断允许位 成都电子机械高等专科学校电气与电子工程系 毕业设计论文 22 主程序框图 主程序框图 外中断外中断 0 子程序 子程序 按键按下信号按键按下信号 开始 中断初始化 液晶初始化 设置初始时间 读取时钟时间 显示子程序 外中断 0 保存状态 返回 成都电子机械高等专科学校电气与电子工程系 毕业设计论文 23 外中断外中断 1 子程序子程序 电机转动一圈产生一个下降沿信号 电机转动一圈产生一个下降沿信号 外中断 1 读定时器 T0 的初值计 算电机 1 圈的转速 变 量 value 保存 清零定时器 T0 的初值 为计算下 1 圈的转速准 备 把 value 拆成 3 位数 送给液晶显示数组 返回 成都电子机械高等专科学校电气与电子工程系 毕业设计论文 24 定时器定时器 T1 中断子程序中断子程序 电机换相信号 电机换相信号 N Y 定时器T1 定时器 T1 重赋初值 控制电机变相时间的 变量 change 自加 Change 设 置的转速 清 零 change 电 机 改变状态 返回 成都电子机械高等专科学校电气与电子工程系 毕业设计论文 25 显示子程序 显示子程序 0123 显示子程序 加速处理减速处理 显示速度 按键信号 显示时间加速减速 返回 成都电子机械高等专科学校电气与电子工程系 毕业设计论文 26 用用 KEIL 实现联机调试的步骤实现联机调试的步骤 keil 除了可以编写 编译和仿真执行来调试用户程序外 还可以通过串口实 现联机调试 即通过单步 断点看代码在硬件上的执行效果 步骤如下 使用的是 AT89C51CC03 单片机 keil 版本是 Keil C51 V9 00 1 用 KEIL 建立工程项目文件 编程 编译调试用户程序 保证软件执行进行没 什么问题 2 修改 KEIL 安装点 keil c51 FlashMon 目录下与单片机型号一致的配置文件 config inc 主要是根据实际情况修改 cpu clock 和 code start 两个参数值 我改为 12M 和 0E000H 3 重新编译该目录下的程序 生成新的调试程序 Monitor HEX 如果没有重新 生成 把选项 create HEX file 勾上 4 运行FLIP程序 将Monitor HEX烧进单片机中 起始地址为0E000H 即 SBV E0 BLJB 选上 BSB 0 EB FF 5 点击 Start Application 按钮执行 Monitor HEX 程序 6 运行 keil 打开工程项目文件 修改调试参数 即菜单 project option for target 选 debug 页 点击右边的 use keil monitor 51 driver 点击 seting 按钮 选择串口和波特率 注意 要和烧片子时用的波特率一致 一般用 9600 需要注意的是 如果串口为自动方式 即除了三根通信线外 还接了 RTS 和 DTR 需要将 RTS 和 DTR 设置为 inactive 7 编译好程序 点击 debug 菜单下的调试命令 可以单步执行 可以设置断点 可以全速运行 这时候实际使用单片机硬件运行程序 可以看到执行效果 如显 示 按键响应等 这种情况下可以调试程序实际执行的效果 8 如果不设置断点 全速运行用户程序 则用户程序和实际运行一致 keil 会 失去对用户程序的控制 无法中断用户程序的执行 只有按 reset 才能中断用户 程序运行了 9 发现问题可退出调试状态 修改程序 重新编译 然后再次进入调试状态 单步或设置断点进行调试 注意 全速运行时不能中断 否则退不出 强行退出 的后果是 monitor 的状态不对 无法再次进入联机调试状态 10 退出调试后 无论是按 reset 还是通过 flip 程序的 start application 按钮 都 无法再次执行 monitor 程序 此时执行的是用户程序 要想继续调试 只能擦除 成都电子机械高等专科学校电气与电子工程系 毕业设计论文 27 flash 重新将 monitor 烧进单片机 全部编译没有错误和警告 那么软件的编写就完成了 并且生成了十六进制 HEX 单片机可用文件 程序编译成功 程序编译 成都电子机械高等专科学校电气与电子工程系 毕业设计论文 28 当硬件放置完 画好电路图后 双击单片机 弹出一个对话框 找到开始在 Keil 里面生成的 HEX 文件 单击 OK 显示切换抓图显示切换抓图 成都电子机械高等专科学校电气与电子工程系 毕业设计论文 29 全电路仿真全电路仿真 成都电子机械高等专科学校电气与电子工程系 毕业设计论文 30 总总结结 采用单片机技术来实现转速的测量 可以提高转速测量的精确度 并且加 快了采样的速率 具有较好的实时性 基于单片机的转速测量系统 具有硬件电路简单 程序简单和运算速度 快 测速范围广 抗干扰性能好的特点 在设计的信号处理电路中经过滤波 能 够进一步减少误差 使测速精度得到提高 通过这次毕业设计 我深深懂得了要不断把所学知识学以致用 也发现了自 己的知识薄弱 还需通过自身不断努力 不断提高自己的分析问题 解决问题的 能力 同时也提高了我的专业技能 拓展了我的专业知识面 使我更加体会到要 想完成一件事必须认真 踏实 勤于思考 和谨慎稳重 致致谢谢 经过长时间的忙碌 毕业设计已经接近尾声 通过这次学校组织的毕业设 计 端正了自己学习的态度 锻炼了自己独立动手的能力 在此 我要感谢每一 个帮助过我的人 首先 我要感谢的是我的指导教师曾一江老师 曾老师平日里工作繁多 三 年里都是曾老师亲自执教 为这次的毕业设计奠定了知识基础 在毕业设计的 制作中都给予我悉心的指导和帮助 另外 她的治学严谨和科学研究的精神也 是我永远学习的榜样 并将积极影响我今后的学习和工作 再次 我要感谢的是我的同学沈小平同学和同组同学邓先均同学 在我毕 业设计期间 他们给了我不少的关心和帮助 特别是沈小平同学 如果没有他 的悉心指导与帮助 我想这次的毕业设计不会完成的如此顺利 理论与实践的结合 是对知识较好牢固掌握的一种方法 这次的毕设就有这 种理念 学校真是高瞻远瞩 因为就在前几天 我刚刚到即将工作的公司报到 了 接触了自己将来的工作岗位 把知识与实践相结合是多么的重要啊 所以 作为毕业生的我表示深切感谢 这次毕业设计机会真的是难得与重要 最后我 要感谢的是我亲爱的成都电子机械高等专科学校 感谢您三年来的培养 成都电子机械高等专科学校电气与电子工程系 毕业设计论文 31 主要参考文献主要参考文献 1 单片机原理及接口技术 曾一江 科学出版社 2 单片机 C 语言应用 100 例 王东锋 董冠强 电子工业出版社 3 单片机 C 语言应用程序设计 戴佳 戴卫恒 刘博文 电子工业出版社 4 单片机 C 语言与 PROTUES 仿真技能实训 刘娟 中国电力出版社 5 传感器及应用 王煜东编机械工业出版社 6 电力拖动自动控制系统 运动控制系统 陈伯时 机械工业出版社 7 一种高精度实时电机转速测量新方法 马全权 强盛 齐齐哈尔大学学报 8 传感器原理及应用 北京航空航天大学出版社 王雪文 张志勇 9 模拟集成电路应用 西北工业大学出版社 王秀杰 张畴先 成都电子机械高等专科学校电气与电子工程系 毕业设计论文 32 附录 程序代码附录 程序代码 Main include include lcd1602 h include ds1302 h uchar phase 电机 4 相的变换 uchar second 时间的计数 uchar change 设置电机转速的中断标志 uchar state 中断源的选择状态 uchar speed 40 电机初始的速度 uchar speed up slow down 电机的加速与减速 uchar mot spee1 The Speed is uchar mot spee2 000r min uchar four single 0 x01 0 x02 0 x04 0 x08 单 4 拍模式 uchar four double 0 x0c 0 x06 0 x03 0 x09 双 4 拍模式 void init break 中断初始化函数 TMOD 0 x11 TH0 0 x00 TL0 0 x00 TH1 65536 5000 256 定时 5ms TL1 65536 5000 256 ET0 1 ET1 1 IT0 1 EX0 1 IT1 1 EX1 1 EA 1 TR0 1 TR1 1 void main init break lcd init set time while 1 成都电子机械高等专科学校电气与电子工程系 毕业设计论文 33 read time display void int0 interrupt 0 state P1 void int1 interrupt 2 uchar value 电机的转速 value 60000000 second 65536 TH0 256 TL0 1 second 0 TH0 0 x00 TL0 0 x00 mot spee2 4 value 100 0 mot spee2 5 value 100 10 0 mot spee2 6 value 100 10 0 void timer interrupt 1 second void timer1 interrupt 3 TH1 65536 5000 256 定时 5ms TL1 65536 5000 256 change if change speed change 0 P2 four double phase 电机以双 4 拍的模式转动 P2 single four phase 电机以单 4 拍的模式转动 phase phase 成都电子机械高等专科学校电气与电子工程系 毕业设计论文 34 Ds1302 include include include ds1302 h extern uchar clk xian1 存放时钟的数据 extern uchar clk xian2 uchar time 12 3 28 17 46 30 uchar write add 0 x8c 0 x88 0 x86 0 x84 0 x82 0 x80 年月日时分秒的地址 写 uchar read add 0 x8d 0 x89 0 x87 0 x85 0 x83 0 x81 年月日时分秒的地址 读 void write byte uchar dat uchar i for i 0 i 1 从数据

温馨提示

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

评论

0/150

提交评论