单片机驱动步进电机电路及程序

上传人:我*** 文档编号:134572538 上传时间:2020-06-06 格式:PPT 页数:58 大小:1.41MB
返回 下载 相关 举报
单片机驱动步进电机电路及程序_第1页
第1页 / 共58页
单片机驱动步进电机电路及程序_第2页
第2页 / 共58页
单片机驱动步进电机电路及程序_第3页
第3页 / 共58页
单片机驱动步进电机电路及程序_第4页
第4页 / 共58页
单片机驱动步进电机电路及程序_第5页
第5页 / 共58页
点击查看更多>>
资源描述

《单片机驱动步进电机电路及程序》由会员分享,可在线阅读,更多相关《单片机驱动步进电机电路及程序(58页珍藏版)》请在金锄头文库上搜索。

1、9 1 第九章MCS 51单片机与步进电机接口 特点 步进电机能接受步进脉冲的控制一步一步地旋转 用途 步进电机成了计算机应用项目中的主要执行元件之一 尤其在精确定位场合中得到了广泛的应用 内容 简述步进电机的工作原理 讨论它与单片机接口的电路以及应用的方法 9 2 9 1步进电机简述一 步进电机原理步进电机的转子上均匀地分布着40个齿 齿间 齿距 夹角为9 360 40 定子上有6个大齿 相差180 的两个大齿组成一相 共有A 三相 每个大齿上有若干个与转子上一样的小齿 定子的每一相都有励磁绕组 9 3 二 步进电机的运行方式1 三相三拍运行方式 1 当A相通电时 B相 相不通电 A相定子上

2、的齿与转子上的齿对齐 通电后磁场力作用的结果 迫使电机旋转3 B相定子上的齿顺时针超前转子上相应的齿3 C相定子上的齿顺时针超前转子上相应的齿6 9 4 2 当B相接通电时 A相 C相不通电 B相齿对齐 电机旋转3 C相超前3 相超前 3 当C相通电时 B相 A相不通电 C相齿对齐 电机旋转3 A相超前3 相超前6 9 5 因此 如果定子A B C三相按A B C A的顺序依次通电 则步进电机将不断地按顺时针方向转动 每一次通电转 每三次通电才走完一个齿距 因此叫三相三拍 每一次通电转动的固定角叫步距角 显然 三相三拍运行时 步距角 9 6 假如某次通电后 控制脉冲不再来 则电机转子齿和某相对

3、齐后就停止转动 叫做位状态 如果把顺时针叫正转 那么当通电顺序按A C B A进行时 则电机反时针旋转 叫反转 可见控制步进电机正转反转只是三相绕组通电顺序不同而已 9 7 2 三相六拍运行方式当A相通电时 A相定子齿与转子齿对齐 此后 如果让A B两相同时通电 可以发现转子转动1 5 再让A相断电 B相通电 又可发现转子再转1 5 所以按照A AB B BC C CA A的顺序控制 电机将按顺时针方向旋转 每步转动1 5 即步距角 1 5 由于要经过6步才走完一个齿距 6 1 5 9 所以叫三相六拍 9 8 如果要使步进电机反转 只要按A AC C CB B BA顺序通电就行了 结论 从上面

4、两种运行方式可看出 错齿是促使步进电机旋转的根本原因 当某相通电 相应的齿对齐 迫使电机旋转一个步距角 未通电的各相的齿出现了新的错位 改变通电的顺序和通电的相数 可组合出其它的运行方式 讨论 三项三拍和三项六拍运行方式 哪种定位更精确 9 9 三 步进电机有如下特点 给步进脉冲电机就转 不给步进脉冲电机就不转 步进脉冲频率高 步进电机转得快 步进脉冲频率低 步进电机转得就慢 改变各相的通电方式 叫脉冲分配 可以改变步进电机的运行方式 改变通电顺序 可以控制步进电机的正 反转 9 10 9 2步进电机与MCS 51单片机的接口步进电机与单片机的连接一般有两种形式一 由硬件完成脉冲分配的功能在这

5、种形式里 脉冲分配器 CH250 驱动电路由硬件完成 单片机只提供步进脉冲和正 反转控制信号 步进脉冲的产生与停止 步进脉冲的频率和个数都可用软件控制 9 11 讨论 单片机输出步进脉冲后 再由脉冲分配电路按事先确定的顺序控制各相的通断 一般来说 硬件一旦确定下来 不易更改 这种方案 硬设备成本高 它的应用受到了限制 怎样用软件产生步进脉冲呢 所谓软件产生就是用软件控制P3 0为1或为0的次序和长短 如果先令P3 0 1 延时一段时间 再令P3 0 0 再延时一段时间后 又令P3 0 1 如此循环 就可构成脉冲序列 延时时间的长短决定了脉冲序列的周期 而脉冲序列的周期又与步进电机的步矩有关 下

6、面提供了一个产生步进脉冲的子程序 9 12 SUB SETBP3 0SETBP3 0 保证输出高电平的时间 5 sSETBP3 0CLRP3 0 变为低电平MOVR7 30HLOOP NOP 软件延时程序 NOP 基本延时 10 s 时间常数 NOPDJNZR7 LOOPRET 时间常数事先可装入30H单元 改变30H单元的内容就可改变延时长短P3 0输出脉冲波形 9 13 2 由软件完成脉冲分配工作特点 由软件完成脉冲分配工作 不仅使线路简化 成本下降 而且可根据应用系统的需要 灵活地改变步进电机的控制方案 硬件的主要任务是完成驱动功能 如图单片机直接带动步进电机的一种接口方案 接口并不复杂

7、 单片机P1的低三位被设成输出位 P1 0控制A相绕组通断 P1 1控制B相 P1 2控制C相 9 14 以A相控制为例 当P1 0输出为1 发光管不发光 因此光敏二极管截止 使担负驱动任务的达林顿管导通 A相绕组通电 相反 当P1 0 0 发光管发光 光敏管导通 达林顿管截止 A相绕组不通电 9 15 为什么步进电机功率驱动电路采用光电隔离 步进电机功率驱动电路工作在较大脉冲电流状态 采用光电耦合器将单片机与步机电机隔离可以避免单片机与步进电机功率回路的共地干扰 此外 万一驱动电路发生故障 也不致让功放中较高的电压串入单片机而使其损坏 怎样用软件完成脉冲分配呢 所谓脉冲分配就是用软件改变P1

8、口低三位的输出值 进而达到控制三相绕组的通电顺序和通电方式之目的 9 16 1 软件选择单三拍的工作方式单三拍的通电方式为A B C A 要想达到这个目的 只需依次向P1口输出如下控制字 P1 2P1 1P1 0编码 C相 B相 A相 001 01H A相通 B C相断010 02H B相通 A C相断100 04H C相通 A B相断 9 17 在控制字间也应加入软件延时来保证一定的时间间隔 假定要求时间间隔为1ms 控制电机按三相三拍正转的程序是 ZHEN MOVP1 01H A相通电ACALLD1MSMOVP1 02H B相通电ACALLD1MSMOVP1 40H C相通电ACALLD1

9、MSRETD1MS MOVR7 64H 延时1ms子程序D1MS1 NOP 2 sNOP 2 sNOP 2 sDJNZR7 D1MSl 4 sRET 9 18 要想控制步进电机反转 只需把输出的控制字的次序按 01H A 04H C 02H B 01H A 组合即可 反转程序如下 FAN MOVP1 01H A相通电ACALLD1MSMOVP1 04H C相通电ACALLD1MSMOVP1 02H B相通电ACALLD1MS 9 19 2 软件选择三相六拍的工作方式不难推出与三相六拍相对应的控制字为P1 2P1 1P1 0 C相 B相 A相 控制编码导通情况001 01H A相通电011 03

10、H AB相通电010 02H B相通电110 06H BC相通电100 04H C相通电101 05H CA相通电 9 20 如果按 001 101 100 110 010 011 001 ACACCBBBAA的次序输出 就可达到反转的目的 练习1 仿照三相三拍的办法编出反转控制子程序 9 21 FAN MOVP1 01H A相通电ACALLD1MSMOVP1 05H CA相通电ACALLD1MSMOVP1 04H C相通电ACALLD1MSMOVP1 06H CB相通电ACALLD1MSMOVP1 02H B相通电ACALLD1MSMOVP1 03H BA相通电ACALLD1MSRET 9

11、22 9 3应用举例 机械手的微机控制随着科学技术的进步 工业自动化的进程 机械手将进一步取代简单而笨重的人工操作 逐步把在恶劣环境下工作的人们解放出来 这对于改善人们的工作条件 提高工作效率 具有一定的现实意义 本例系存取邮件机械手的控制 在邮政部门和立体仓库中作自动存职包裹和货物之用 9 23 一 工作原理通过键盘 将货位 或包位 代码输入微机 启动存 或取 命令键 机械手即可在微机的控制下 作X Y Z三个方向的运动 完成存 或取 包操作 控制原理如图所示 系统主要包括微机控制 步进电机控制 机械传动系统 光控音乐电路 工作电源 货架和柜台等七部分组成 微机根据键入的货物代码 产生相应的

12、脉冲信号 经CH250脉冲分配器和驱动电路 输出具有一定功率的脉冲 驱动有关电机正转或反转及其步数 从而实现货物的存取 机械手行进中 光控音乐电路驱动蜂呜器发出乐曲 从而增强了工作的节奏 控制的旋律 9 24 二 系统组成1 硬件设计如图是机械手微机控制系统硬件电路 本系统选用MCS 51系列中的8031芯片 扩展了一片2732 以存放用户程序 由于随机存储的数据不多 只利用片内RAM 采用两位LED显示器和2 8键盘 P3 5 P3 6和P3 7分别输出X Y 和Z方向的控制脉冲 P1 6和P1 7分别用来控制步进电机的正 反转和产生复位信号 9 25 2 机械传动部分机械传动部分包括导轨

13、小车 升降盘和机械手等部分 水平方向位移步进电机MX调通过滑轮和传送带 使小车在导轨上运动 实现X方向上的位移 垂直方向升降作调方向运动的小车上装有一竖直的六棱金属杆 升降盘套于杆上 杆的顶部装有一定滑轮并配有平衡锤 固定于小车上的步进电机MY带动升降盘 实现Y方向上的位移 9 26 机械手动作机械手装升降盘上 如图所示 图中A点固定 步进电机MZ带动B点 改变A B间的较小距离 使得机械手移动较大距离 货架货架分三层 每层有4个包位 共计12个包位 图中数字为包位编码 编码的个位数表示X位置 十位数表示Y位置 层数 以供计算机查讯 判断之用 9 27 本例采用SB 2A型步进电机 它工作于三

14、相六拍的工作方式 电机按顺时针方向旋转 即正转 时 各相脉冲顺序为 A 1 A 1 B 1 B 1 B C 1 C 1 C 1 A 1电机按逆时针方向旋转 即反转 时 各相脉冲顺序为 A 1 A 1 C 1 C 1 C 1 B 1 B 1 B 1 A 1 9 28 三 程序设计系统软件包括 主程序 取包程序 存包程序 货位判断程序 X Y方向运动和机械手动作子程序等 1 程序流程图限于篇幅 只给出主要流程图 9 29 2 脉冲序列的生成程序对于步进电机的控制 实际上是控制步进脉冲的个数和步进脉冲的间隔 而步进电机的间隔又可转化为某基准延时子程序的循环次数 因此 可以很方便地用软件来控制步进电机

15、的运行 达到各种控制目的 9 30 2 货位判断程序如图是货位判断程序流程图 功能 根据键入的货位编码判断货位 以确定X Y方向所需要的脉冲数 9 31 主程序功能 管理键盘和显示以及有关控制 无键按下或执行有关命令后 显示提示符 2 程序清单ORG0000HAJMPMAINMAIN MOVSP 60HSUN SETBP3 5SETBP3 6SETBP3 7CLRP1 6CLRP1 7MOVR0 40HMOVA 12H 字符 ML0 MOV R0 A 的编码INCR0CJNER0 42H ML0 9 32 SETBP1 7 复位信号 键输入 显示 键判断F6H 特殊数据R3 键号暂存器ML1

16、ACALLDIRACALLKEYADDA 0F6H 键号 F6用于数字 功能键的判断JCSUN1 功能键转移至SUN1MOV41H 40H 数字键号送显示缓冲区MOVR0 40HMOVR3 AANLA 0FH 保留低四位MOV R0 AAJMPML1 9 33 功能键处理程序 A B C键 SUN1 MOVA R3 CJNEA 0AH SUN2AJMPQBCXSUN2 CJNEA 0BH SUN3AJMPCBCXSUN3 CJNEA 0CH ML1AJMPSUN 9 34 键盘子程序P1口 P1 6正 反转P1 7复位P3口 P3 3P3 4键盘行输入口R3 列扫描寄存器初值FEHR4 列号计数器SBUF 发送缓冲器发送列扫描信号KEY ACALLKS1JNZLK1NI ACALLDIRAJMPKEYLK1 ACALLDIRACALLDIRACALLKS1JNZLK2AJMPNILK2 MOVP1 00HMOVR3 0FEHMOVR4 00HLK4 MOVSBUF R3 9 35 MOVR6 05H 延时等待发送DK6 DJNZR6 DK6JBP3 3LONEMOVA 00HAJMPL

展开阅读全文
相关资源
相关搜索

当前位置:首页 > 办公文档 > PPT模板库 > PPT素材/模板

电脑版 |金锄头文库版权所有
经营许可证:蜀ICP备13022795号 | 川公网安备 51140202000112号