三相步进电机控制系统的设计.doc_第1页
三相步进电机控制系统的设计.doc_第2页
三相步进电机控制系统的设计.doc_第3页
三相步进电机控制系统的设计.doc_第4页
三相步进电机控制系统的设计.doc_第5页
免费预览已结束,剩余23页可下载查看

下载本文档

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

文档简介

武汉理工大学 计算机控制技术 课程设计说明书 1 课程设计任务书课程设计任务书 学生姓名 学生姓名 肖阳肖阳 专业班级 专业班级 自动化自动化 08040804 指导教师 指导教师 张素文张素文 工作单位 工作单位 自动化学院自动化学院 题题 目目 三相步进电机控制系统的设计 初始条件 初始条件 设计一个三相步进电机控制系统 要求系统具有如下功能 用 K0 K2 做为通电方式选择键 K0 为三相单三拍 K1 为三相双三拍 K2 为三相六拍 K3 为启动 停止控制 K4 方向控制 正反转 K5 速度控制 快慢两档 用 4 位 LED 数码管显示工作步数 用 3 个 发光二极管显示状态 正转时红灯亮 反转时黄灯亮 不转时绿灯 亮 要求完成的主要任务要求完成的主要任务 1 硬件设计 系统总原理图及各部分详细原理图 2 软件设计 系统总体流程图 步进电机单三拍 双三拍 三相 六拍各模块流程图 显示模块流程图等 3 编写程序 能够完成上述任务 4 完成符合要求的设计说明书 时间安排 时间安排 2011 年 6 月 20 日 2010 年 6 月 30 日 指导教师签名 指导教师签名 年年 月月 日日 系主任 或责任教师 签名 系主任 或责任教师 签名 年年 月月 日日 武汉理工大学 计算机控制技术 课程设计说明书 2 摘要 本设计主要设计了基于单片机的三相步进电机系统 其中使用 80c51 单片 机作为主控芯片 利用 ULN2003A 集成电路 采用单极性驱动方式 使步进电机 完成步进电机三相单三拍 三相双三拍 三相六拍 启动 停止控制 方向控制 速度控制 快慢两档 用 4 位 LED 数码管显示工作步数 用 3 个发光二极管显 示状态 正转时红灯亮 反转时黄灯亮 不转时绿灯亮 电路结构简单 设计思路清晰 同时利用 KEIL 和 Proteus 进行联调仿真 结果比较直观 关键字关键字 步进电机 单片机 单极性驱动 武汉理工大学 计算机控制技术 课程设计说明书 3 目录 1 设计任务及要求 5 1 1 设计任务 5 1 2 任务分析 5 2 方案比较及选择 6 2 1 电机驱动选择方案 6 2 2 LED 显示选择方案 6 2 3 按键状态的读取 6 3 系统实现的原理 7 3 1 步进电机控制工作原理 7 3 1 1 步进电机的启停控制 7 3 1 2 步进电机的工作原理 7 3 1 3 步进电机的转向控制 7 3 1 4 步进电机的启停控制 8 3 1 5 步进电机的速度控制 8 3 2 系统设计思路 8 3 3 系统的整体框图 9 4 系统的硬件设计 10 4 1 总体设计 10 4 2 步进电机控制电路 11 4 2 1 启 停控制 正 反转控制 工作模式控制电路分析 11 4 2 2 步进电机控制电路 11 4 3 显示电路 12 4 3 1 发光二极管显示电路 12 4 3 2 八段数码管显示电路 12 武汉理工大学 计算机控制技术 课程设计说明书 4 5 系统软件设计 13 5 1 总体设计 13 5 1 2 系统总体流程图 15 5 2 关键模块设计 17 5 2 1 三相步进电机模块设计 17 5 2 2 显示模块设计 17 5 5 2 步进电机调速模块流程图 19 6 系统仿真 20 7 小结及体会 21 参考文献 22 附录 23 武汉理工大学 计算机控制技术 课程设计说明书 5 三相步进电机控制系统的设计 1 设计任务及要求 1 1 设计任务 设计一个三相步进电机控制系统 要求系统具有如下功能 用 K0 K2 做为 通电方式选择键 K0 为三相单三拍 K1 为三相双三拍 K2 为三相六拍 K3 为 启动 停止控制 K4 方向控制 K5 速度控制 快慢两档 用 4 位 LED 数码管显 示工作步数 用 3 个发光二极管显示状态 正转时红灯亮 反转时黄灯亮 不 转时绿灯亮 硬件设计 系统总原理图及各部分详细原理图 软件设计 系统总体流程 图 步进电机单三拍 双三拍 三相六拍各模块流程图 显示模块流程图等 编写程序 能够完成上述任务 1 2 任务分析 设计要求设计一个三相步进电机控制系统 分析可以得出它的几个基本功 能 1 三相步进电机控制系统能实现多运行方式 能够以三相单三拍 三相双三拍 三相六拍的方式运行 因此要输出相应的控制字进行控制 2 三相步进电机控制系统能实现正反转和调速控制 能够改变电机运行的方向 和速率 3 三相步进电机控制系统有显示功能 可以采用共阳极的 LED 数码管对步数进 行显示 武汉理工大学 计算机控制技术 课程设计说明书 6 2 方案比较及选择 2 1 电机驱动选择方案 方案 1 使用功率三极管等电子器件搭建成功率驱动电路来驱动电机的运 行 优点是电路简单 但信号不够稳定 器件较大而不便电路的集成 方案 2 使用专门的电机驱动芯片 ULN2004A 来驱动电机运行 其优点是便 于电路的集成 且驱动简单 驱动信号稳定 不受外部干扰 通过对方案的比较 我选择使用电机驱动芯片来作为驱动 2 2 LED 显示选择方案 方案 1 把所要显示的数据通过专用的七段显示芯片的转换输出给 LED 显 示屏 其优点是输出简单 可以简化程序 但增加了芯片的费用 方案 2 通过软件把所要的数据转化为七段显示的数据 直接通过单片机 接口来显示 其优点是简化了电路 但增加了软件编写的负担 通过对方案的比较 我选择通过软件编写来输出显示信号 2 3 按键状态的读取 方案 1 把按键接到单片机的中断口 若有按键按下 单片机接收到中断信 号 再通过软件编写的中断程序来执行中断 优点是接线简单 简化了电路 但软件编写较为复杂 不易掌握 方案 2 不使用中断 直接把开关分别接在单片机的接口上 通过查询端口 信号来动作 其优点是程序得到简化 可读性加强 通过对方案的比较 我选择通过查询方式来读取端口信号 武汉理工大学 计算机控制技术 课程设计说明书 7 3 系统实现的原理 3 1 步进电机控制工作原理 3 1 1 步进电机的启停控制 步进电机由于其电气特性 运转时会有步进感 即振动感 为了使电机转动 平滑 减小振动 可在步进电机控制脉冲的上升沿和下降沿采用细分的梯形波 可 以减小步进电机的步进角 提高电机运行的平稳性 在步进电机停转时 为了 防止因惯性而使电机轴产生顺滑 则需采用合适的锁定波形 产生锁定磁力矩 锁 定步进电机的转轴 使步进电机的转轴不能自由转动 3 1 2 步进电机的工作原理 图 1 步进电机三相接线图 如图 3 1 所示 U1 V1 W1 接电源 分别有三个开关控制 U2 V2 W2 分 别接地 如果给处于错齿状态的相通电 则转子在电磁力的作用下 将向磁导率最 大 即最小磁阻位置 位置转动 即向趋于对齿的状态转动 武汉理工大学 计算机控制技术 课程设计说明书 8 3 1 3 步进电机的转向控制 如果给定工作方式正序换相通电 步进电机正转 若步进电机的励磁方式 为三相六拍 即 A AB B BC C CA 如果按反序通电换相 即则电机就反转 其他方式情况类似 3 1 4 步进电机的启停控制 步进电机由于其电气特性 运转时会有步进感 即振动感 为了使电机转动 平滑 减小振动 可在步进电机控 制脉冲的上升沿和下降沿采用细分的梯形 波 可以减小步进电机的步进角 提高电机运行的平稳性 在步进电机停转时 为 了防止因惯性而使电机轴产生顺滑 则需采用合适的锁定波形 产生锁定磁力 矩 锁定步进电机的转轴 使步进电机的转轴不能自由转动 3 1 5 步进电机的速度控制 步进电动机运转的速度是由输入到 A B C 三相绕组的频率所决定的 脉 冲的频率越高 电动机运转的速度越快 否则 速度就越慢 因而通过延时程 序控制输出脉冲的频率 就可以实现对步进电机速度的控制 3 2 系统设计思路 此次我们所设计的是一个步进电机控制系统 主要由单片机 80C51 3 相步 进电机 7 段数码管 及一些其他相关元件设计而成 可以通过开关来控制系 统的启 停工作 当系统运转时 用开关来控制方向 并使相应的指示灯亮起 同样由开关来选择工作模式 运转时 用 4 位 7 段数码管来输出步数 最后根 据思路所设计出来的硬件图设计相适应的软件 武汉理工大学 计算机控制技术 课程设计说明书 9 3 3 系统的整体框图 下图为系统总体设计方框图 单片机 AT89C51 ULN2003A 驱动芯片 三相 步进电机 7 段 LED 数码管等一些电路模块组成 80c51 单 片机整体 控制 LED 显示模 块 开关选择 电机工作 模式 LED 显示 灯显示电 机工作状 态 三相步 进电机 模块 图 2 系统的整体框图 武汉理工大学 计算机控制技术 课程设计说明书 10 4 系统的硬件设计 4 1 总体设计 设计一个单片机三相步进电机控制系统要求系统具有如下功能 1 用 K0 K2 做为通电方式选择键 K0 为单三拍 K1 为双三拍 K2 为三 相六拍 2 K3 K4 分别为启动和方向控制 3 正转时红色指示灯亮 反转时黄色指示灯亮 不转时绿色指示灯亮 4 用 4 位 LED 显示工作步数 根据设计要求用 PROTEUS 所做的硬件连线图如下图 1 图 2 总体硬件连线 武汉理工大学 计算机控制技术 课程设计说明书 11 4 2 步进电机控制电路 4 2 1 启 停控制 正 反转控制 工作模式控制电路分析 原理图如下 图 3 按键控制图 1 K3 为启 停控制开关 控制整个系统的开启和关闭 2 K4 为正 反转控制开关 控制步进电机的转向 3 K0 K3 为工作模式控制开关 KO 接电时 为步进电机单三拍工作模式 K1 接电时 为步进电机双三拍工作模式 K2 接电时 步进电机工作模式为三相六 拍 K5 速度控制 快慢两档 4 2 2 步进电机控制电路 将 80c51 的 P1 0 P1 3 作为步进电机的输出控制口 原理图如下 图 4 步进电机的输出控制口 武汉理工大学 计算机控制技术 课程设计说明书 12 4 3 显示电路 4 3 1 发光二极管显示电路 用 3 个不同颜色的发光二极管来作为指示灯显示 将 P3 5 接红灯 P3 6 接黄 灯 P3 7 接绿灯 正转时红色指示灯亮 反转时黄色指示灯亮 不转时绿色指 示灯亮 原理图如下 图 5 指示灯接线图 4 3 2 八段数码管显示电路 由 80c51 的 P0 口取出显示码 从 80c51 的 P2 0 P2 3 输出位选码 设计中我们 主要用到 4 位显示步数既可 原理图如下 图 6 led 接线图 武汉理工大学 计算机控制技术 课程设计说明书 13 5 系统软件设计 5 1 总体设计 5 1 1 步进电机的工作方式 1 三相单三拍工作方式 在这种工作方式下 A B C 三相轮流通电 电流切换三次 磁场旋转一周 转 子向前转过一个齿距角 因此这种通电方式叫做三相单三拍工作方式 这时步 距角 b 度 为 b 360 mz 公式 1 式中 m 定子相数 z 转子齿数 单三拍的数学模型 控制位 步序 P1 7P1 6P1 5P1 4P1 3P1 2 C 相 P1 1 B 相 P1 0 A 相 工作 状态 控制 模型 100000001A01H 200000010B02H 300000100C04H 表 1 2 三相六拍工作方式 在这种工作方式下 绕组以 A AB B BC C CA A 时序 或反时序 转换 6 次 磁场旋转一周 转子前进一个齿距 每次切换均使转子转动 1 5 故这种通 电方式称为三相六柏工作方式 其步距角 b 为 b 360 2mz 180 mz 公式 2 六拍的数学模型 武汉理工大学 计算机控制技术 课程设计说明书 14 控制位 步序 P1 7P1 6P1 5P1 4P1 3P1 2 C 相 P1 1 B 相 P1 0 A 相 工作 状态 控制 模型 100000001A01H 200000011AB03H 300000010B02H 400000110BC06H 500000100C04H 600000101CA05H 表 2 3 双三拍工作方式 这种工作方式每次都是有两相导通 两相绕组处在相同电压之下 以 AB BC CA AB 或反之 方式通电 故称为双三拍工作方式 以这种方式通电 转子 齿所处的位置相当于六拍控制方式中去掉单三拍后的三个位置 它的步距角计 算公式与单三拍时的公式相同 极分度角 齿距角 R k 1 m 进一步化简得齿数 z z q mR k 公式 3 式中 m 相数 q 每相的极数 k m 1 的正整数 R 正整数 为 0 1 2 3 双三拍的数学模型 武汉理工大学 计算机控制技术 课程设计说明书 15 控制位 步序 P1 7P1 6P1 5P1 4P1 3P1 2 C 相 P1 1 B 相 P1 0 A 相 工作 状态 控制 模型 100000011AB03H 200000110BC06H 300000101CA05H 表 3 5 1 2 系统总体流程图 设计说明 首先复位单片机 然后从 P3 口读出开关状态 判断是否启动 没 启动绿灯亮重新确认启动 启动后再次读取 P3 口数据 判断工作方式并将对应 的用来存储步进电机工作方式字的数组首地址值给 q 由 P3 4 口的双向开关来 控制步进电机的正反转 如果是正转则红灯亮 反转则绿灯亮 在电机每走一 步后 步数记数加 1 然后通过 LED 显示把工作步数显示出来 再从 P3 口把状 态信息读出来 与之前的 P3 口的状态信息进行比较 如果状态信息没有改变 电机继续运行 如果状态信息改变了 就需要重新返回程序的开端 对电机的 运行状态进行判断 让电机重新以新的状态运行 由此 开关的状态在电机每 走一步都会查询一遍 做到实时地反映 武汉理工大学 计算机控制技术 课程设计说明书 16 开始 P3 口 步数清 零 数码管输出 0 绿色显示灯亮 以已选择的序列 输出控制字 K1 K2 K2 选择工作 方式控制字序列 短延时长延 时 步数自增一 启 停按键 K3 按下 正 反转按键 K5 按下 选择正 转控制 字序列 红灯亮 选择反 转控制 字序列 黄灯亮 启 停按键 K3 按下 数码管输出步进 步数 调速键 K4 按下 图 5 1 系统总体流程图 Y Y Y Y N N N N 图 7 总体流程图 武汉理工大学 计算机控制技术 课程设计说明书 17 5 2 关键模块设计 5 2 1 三相步进电机模块设计 设计说明 在此设计中 采用的是三相步进电机 对于步进电机模块的程序 设计采用循环程序设计方法 先把正反转向的控制模型存放在内存单元中 然 后再逐一从单元中取出控制模块并输出 首先启动 选择步进电机的拍数 输 入步数 然后读入正反转的控制模型驱动步进电机转动 三相步进电机的流程框图 分模块入口 P1 0 1 不输出任何信号 P1 1 1 P1 2 1 选择单三拍控制 字序列输出 选择双三拍控制 字序列输出 选择三相六拍控 制字序列输出 分模块出口 N Y N N Y Y 图 8 三相步进电机的流程框图 5 2 2 显示模块设计 设计说明 显示模块是用 4 位八段数码管来显示工作步数 先将显示码存入 数组中 指向最左边一位 然后取出要显示的数据 指向换码表首地址 取出 武汉理工大学 计算机控制技术 课程设计说明书 18 显示码 从 P0 口输出显示码 P2 口输入位选码 显示出 4 位工作步数 最后 修改数组地址 求下一位位选码继续显示 动态显示子程 序 取出要显示的数据 求待显示数据的显示 码 送位段码到 P0 口输出 送位显码到 P2 0 P2 3 输出 延时 4 位显示完了 吗 返回 修改数组地址 求下一位选码 图 9 显示模块的程序框图 武汉理工大学 计算机控制技术 课程设计说明书 19 5 5 2 步进电机调速模块流程图 分模块入口 P1 4 1 K 4 按下 RRR 50 循环次数为 50 调用单位延时程 序 k 自增一 返回 j RRR 达 到要求次数 RRR 500 循环次数为 500 图 10 步进电机调速模块流 程图 Y k 0 N Y N 如图 5 8 为步进电机调速模块流程图 当 P1 4 1 时 即 K4 按下 系统选 择单位延时程序的循环次数为 50 此时步进电机快速运转 当 P1 4 0 时 即 K4 无效 系统选择单位延时程序的循环时间为 500 次 此时步进电机慢速运转 武汉理工大学 计算机控制技术 课程设计说明书 20 6 系统仿真 当选择电机工作在单三拍 正转的模式下 K0 K4 置高电平 K1 K2 置低电 平 系统启动 K3 置高电平 电机开始转动 LED 四位显示屏显示工作步数 LED 指示灯红灯亮显示电机正转的状态 仿真图如下 图 11 系统仿真图 武汉理工大学 计算机控制技术 课程设计说明书 21 7 小结及体会 经过这个学期对微机的深入学习 并且在老师的悉心指导和严格要求下 我们终于完成了三相步进电机设计课程 从书本上的知识到自己亲手的课程设 计 每一步对我们来说无疑是巨大的尝试和挑战 也成就了我们目前在大学期 间独立完成的最大的项目 记得在刚接到这个课题时 由于对相关知识不是很 了解 我们都有些茫然不知所措 设计好一个步进电机需要什么专业知识 带 着这个疑问我们开始了地学习和实验 去图书馆查阅相关资料 上网去了解相 关的内容 渐渐头脑中的概念清晰了起来 在具体设计的过程中 我们遇到了 更大的困难 我们不断地给自己提出新的问题 然后去论证 推翻 再接着提 出新的问题 在这个循环往复的过程中 我们这篇稚嫩的设计日臻完善 虽然 我们的设计作品不是很成熟 即使借鉴前人的很多资料仍然还有很多不足之处 但我仍然心里有一种莫大的幸福感 因为我们实实在在地走过了一个完整的设 计所应该走的每一个过程 并且享受了每一个过程 武汉理工大学 计算机控制技术 课程设计说明书 22 参考文献 1 于海生编著 计算机控制技术 北京 机械工业出版社 2005 2 张义和 王敏男等编著 例说 51 单片机 北京 人民邮电出版社 2008 3 张靖武 周灵彬编著 单片机系统的 PROTEUS 设计与仿真 北京 电子 工业出版社 2007 4 求是科技编著 单片机典型模块设计实例导航 北京 人民邮电出版社 2008 5 顶明亮 唐前辉编著 51 单片机应用设计与仿真 基于 keil 与 proteus 北京 北京航空航天大学出版社 2009 6 李发海 王岩编著 电机与拖动基础 第 3 版 北京 清华大学出版社 2005 武汉理工大学 计算机控制技术 课程设计说明书 23 附录 总程序如下 include include void delay1 void void delay2 void void display int int bs 0 int cishu main char a b c d j q done1 8 0 x01 0 x02 0 x04 0 x00 0 x01 0 x04 0 x02 0 x00 done2 8 0 x03 0 x06 0 x05 0 x00 0 x03 0 x05 0 x06 0 x00 done3 14 0 x01 0 x03 0 x02 0 x06 0 x04 0 x05 0 x00 0 x01 0 x05 0 x04 0 x06 0 x0 2 0 x03 0 x00 P3 0 x20 P3 5 口置 1 绿灯亮 不工作 delay1 L a P3 while a a P3 武汉理工大学 计算机控制技术 课程设计说明书 24 delay1 a P3 判断工作模式 if a if a if a if a else cishu 500 if a P3 4 口为 1 电机正转 红灯亮 b 0 else P3 0 x40 P3 4 口为 电机反转 黄灯亮 if a else b 4 d b while 1 c q b 判断电机步数是否走完 if c 0 b d 步数走完 电机重新再走 else P1 c 从 P1 输出电机控制信号 b bs 总步数加 1 武汉理工大学 计算机控制技术 课程设计说明书 25 display bs 显示步数 j a a P3 if a j 判断 P3 口状态信号是否改变 if a 若为停止信号 总步数清零 goto L 状态信

温馨提示

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

评论

0/150

提交评论