四相双四拍步进电机控制系统设计剖析

整理文档很辛苦,赏杯茶钱您下走!

免费阅读已结束,点击下载阅读编辑剩下 ...

阅读已结束,您可以下载文档离线阅读编辑

资源描述

计算机控制技术课程设计说明书第页共页1引言本实验旨在通过控制AT89S52芯片,实现对四相步进电机的转动控制。具体功能主要是控制电机正转、反转、加速与减速。具体工作过程是:给试验箱上电后,拨动启动开关,步进电机按照预先设置的转速和转动方式转动。调整正反转按钮,步进电机实现正反转切换;拨动加速开关,步进电机转速加快,速度达到最大值,不再加速;拨动减速开关时,电机减速转动,速度减到最小速度,停止减速。实验具体用到的仪器:AT89S52(试验箱上为89C58)芯片、拨码开关单元、四项步进电机等硬件设备。实验具体电路单元有:单片机最小系统、步进电机连接电路、拨码开关连接电路。2四项步进电机2.1步进电机步进电机是一种将电脉冲转化为角位移的执行机构。电机的转速、停止的位置只取决于脉冲信号的频率和脉冲数,而不受负载变化的影响,即给电机加一个脉冲信号,电机则转过一个步距角。2.2步进电机的共组原理AT89S52单片机步进电机(驱动)独立按键键盘系统控制框图计算机控制技术课程设计说明书第页共页2.2步进电机的控制1.换相顺序控制:通电换相这一过程称为脉冲分配。例如:混合式步进电机的工作方式,其各相通电顺序为A-B-C-D,通电控制脉冲必须严格按照这一顺序分别控制A,B,C,D相的通断。2.控制步进电机的转向控制:如果给定工作方式正序换相通电,步进电机正转,如果按反序通电换相,则电机就反转。3.控制步进电机的速度控制:如果给步进电机发一个控制脉冲,它就转一步,再发一个脉冲,它会再转一步。两个脉冲的间隔越短,步进电机就转得越快。2.3步进电机的工作过程开关SB接通电源,SA、SC、SD断开,B相磁极和转子0、3号齿对齐,同时,转子的1、4号齿就和C、D相绕组磁极产生错齿,2、5号齿就和D、A相绕组磁极产生错齿。当开关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方向转动。四相步进电机按照通电顺序的不同,可分为单四拍、双四拍、八拍三种工作方式。单四拍与双四拍的步距角相等,但单四拍的转动力矩小。八拍工作方式的步距角是单四拍与双四拍的一半,因此,八拍工作方式既可以保持较高的转动力矩又可以提高控制精度。计算机控制技术课程设计说明书第页共页单四拍、双四拍与八拍工作方式的电源通电时序与波形分别如图3.a、b、c所示:a.单四拍b.双四拍c八拍步进电机工作时序波形图对步进电机四个绕组依次实现如下方式的循环通电控制:单四拍运行:正转A-B-C-D;反转D-C-B-A双四拍运行:正转AB-BC-CD-DA;反转DC-CB-BA-AD八拍运行:正转A-AB-B-BC-C-CD-D-DA3电路图设计3.1AT89S52概述AT89S52单片机是ATMEL公司推出的高档型AT89S系列单片机中的增强型产品。关于其功能原理及其应用不再赘述。这里只介绍本实验用到的端口和功能。P1口:用户使用的通用I/O口,8位准双向,编程和校验时,可做为高8位地址线;P1.0和P1.1引脚另有第二功能(此实验没用到,不再介绍)P3口:8位准双向I/O口RST:复位信号输入端,高电平有效EA:访问芯片内部和芯片外部程序存储器的选择信号XTAL1,XTAL2:芯片内振荡器反相放大器的输出端和输入端计算机控制技术课程设计说明书第页共页3.2最小系统单片机最小系统或者称为最小应用系统,就是用最少的元件组成的单片机可以工作的系统,对52系列单片机来说,最小系统一般应该包括:单片机、复位电路、晶振电路。3.3复位电路复位电路采用手动复位和上电自动复位。上电自动复位:在单片机上电的瞬间,RC电路充电,由于电容上电电压不能突变,所以RST引脚出现高电平,RST引脚出现的高电平将会随着对电容C的充电过程而逐渐回落。手动复位:当按下复位按钮时,RST出现高电平,实现复位。3.4拨码电路拨码开关和P3口相连,拨动开关sw1、sw2、sw3、sw4来控制电机的启停、正反转、速度的加减。计算机控制技术课程设计说明书第页共页3.5电机驱动电路将步进电机的A、B、C、D分别接到P1.0、P1.1、P1.2、P1.3管脚上实物连接4程序设计4.1主程序框图系统分为电机转动、电机正转、电机反转、电机加速、电机减速和电机计算机控制技术课程设计说明书第页共页停止这几个部分组成,其主程序框图如图下所示4.2步进电机速度控制程序框图正转部分:送P1口不同的值,从而改变电机电源的相序,是电机正转,数值分别为0xf8,0xfc,0xf4,0xf6,0xf2,0xf3,0xf1,0xf9。流程图如下开始延时有外部中断?使用up_date等待开始初始化定义引脚数据等调用定时器函数程序声明定义延时函数响应中断声明定义定时器初始化函数声明定义按键处理函数调用按键子程序等待电机运转与停止电机加速电机减速电机正转与反转计算机控制技术课程设计说明书第页共页反转部分:送P1口不同的值,从而改变电机电源的相序,是电机反转,数值分别为0xf9,0xf1,0xf3,0xf2,0xf6,0xf4,0xfc,0xf8。流程图如下加速部分:当电机处于正转或反转的时候,按下K2,调用加速程序,是电机每转动一部的延时时间变短,从而实现电机的加速。减速部分:当电机处于正转或反转的时候,按下K3,调用加速程序,是电机每转动一部的延时时间变长,从而实现电机的减速。开始延时有外部中断?速度增加等待开始延时有外部中断?down_date等待计算机控制技术课程设计说明书第页共页运行与停止:按下K1键,系统默认是停止,拨动一次是运行,在拨动一次是停止,即是基数次运行,偶数次停止(一般不会拨动N次,为了看到现象,就拨动少数几次)4.3拨码开关输入程序框图用于判断P3.1、P3.2、P3.3、P3.4,开始延时有外部中断?奇数次运行偶数次停止等待开始延时有外部中断?速度减小等待计算机控制技术课程设计说明书第页共页5源程序源程序如下:STACK1SEGMENTSTACKDW256DUP(?)STACK1ENDSDATASEGMENTKEQU09H;工作步数TABSHZDB03H,06H,0CH,09H;双四拍正转模型TABSHFDB09H,0CH,06H,03H;双四拍反转模型TABLE1DB3FH,06H,5BH,4FH,66H,6DH,7DH,07H,7FH,6FH;七段数码管字模DATAENDSCODESEGMENTASSUMECS:CODE,DS:DATA,SS:STACK1START:MOVAX,DATAMOVDS,AXMOVAL,80H;初始化8255,工作方式0,A,、B、C口均为输出MOVDX,MY8255_MODEOUTDX,AL调用按键子程序P3.1?运行或停止电机加速电机减速电机正转或反转P3.1?P3.1?P3.1?计算机控制技术课程设计说明书第页共页WAIT1:MOVAH,08H;等待启动键“0”按下INT21HCMPAL,30HJEMAINJMPWAIT1MAIN:MOVAH,08H;判断工作方式控制键是否按下INT21H;若键按下转到相应的程序,否则循环等待.CMPAL,33HJESHUANGSI;转双四拍正转CMPAL,34HJESHUANGSI1;转双四拍反转CMPAL,35HJEQUIT1JMPMAIN;单四拍正转ZHENGSI:MOVAL,02H;点亮正转指示灯MOVDX,MY8255_COUTDX,ALMOVCL,KZHENGSI0:LEABX,TABLE1;数码管显示剩余步数MOVAL,CLXLATMOVDX,MY8255_AOUTDX,ALZHENGSI1:MOVBL,04H;驱动电机MOVDX,MY8255_BLEADI,TABSZZHENGSI2:MOVAH,0BH;判断是否有按键切换工作方式INT21H;有按键跳回判断按键对应程序,否则继续执行程序INCALJZMAINCALLXIAN;调用显示子程序,显示工作剩余拍数MOVAL,[DI]OUTDX,ALCALLDLY;调用延时子程序INCDIDECBL;判断是否工作完所有拍数,有则退出等待重选工作方式,否则继续循环JNZZHENGSI2DECCLJNZZHENGSI0JMPWAIT1计算机控制技术课程设计说明书第页共页;中间跳转SHUANGSI:JMPSHSIZHSHUANGSI1:JMPSHSIF;双四拍正转SHSIZH:MOVAL,02HMOVDX,MY8255_COUTDX,ALMOVCL,KSHSIZH0:LEABX,TABLE1MOVAL,CLXLATMOVDX,MY8255_AOUTDX,ALSHSIZH1:MOVBL,08HMOVDX,MY8255_BLEADI,TABSHZSHSIZH2:MOVAH,0BHINT21HINCALJZMAIN1CALLXIANMOVAL,[DI]OUTDX,ALCALLDLYINCDIDECBLJNZSHSIZH2DECCLJNZSIBAZH0JMPWAIT1;中间跳转程序WAIT00:JMPWAIT1;双四拍反转SHSIF:MOVAL,01HMOVDX,MY8255_COUTDX,ALMOVCL,KSHSIF0:LEABX,TABLE1MOVAL,CLXLAT计算机控制技术课程设计说明书第页共页MOVDX,MY8255_AOUTDX,ALSHSIF1:MOVBL,4MOVDX,MY8255_BLEADI,TABSHFSHSIF2:MOVAH,0BHINT21HINCALJZMAIN1CALLXIANMOVAL,[DI]OUTDX,ALCALLDLYINCDIDECBLJNZSHSIF2DECCLJNZSHSIF0JMPWAIT00MAIN11:JMPMAIN1;四相八拍正转SIBAZH:MOVAL,02HMOVDX,MY8255_COUTDX,ALMOVCL,KSIBAZH0:LEABX,TABLE1MOVAL,CLXLATMOVDX,MY8255_AOUTDX,ALSIBAZH1:MOVBL,08HMOVDX,MY8255_BLEADI,TABBZSIBAZH2:MOVAH,0BHINT21HINCALJZMAIN11CALLXIANMOVAL,[DI]OUTDX,ALCALLDLY计算机控制技术课程设计说明书第页共页INCDIDECBLJNZSIBAZH2DECCLJNZSIBAZH0JMPWAIT00QUIT:MOVDX,MY8255_A;结束退出程序MOVAL,00HOUTDX,ALMOVAX,4C00HINT21H;软件延时子程序DLYPROCNEARPUSHCXPUSHAXMOVCX,0FFFFHD1:MOVAX,5FFFHD2:DECAXJNZD2LOOPD1POPAXPOPCXRETDLYENDPXIANPROCNEAR;剩余拍数显示子程序PUSHDXMOVDL,BLADDDL,30HMOVAH,02HINT21HMOVDL,20HMOVAH,02HINT21HPOPDXRETXIANENDPCODEENDSENDSTART计算机控制技术课程设计说明书第页共页6参考文献1.MCS-51单片机原理及接口技术哈尔滨工业大学出版社,马家展;2.电动机的单片机控制北京航天大学出版社,王晓明;3.自动化技术及应用机械工业出版社,1996,刘福财;4.单片机原理及应用湖南大学出版社,2004.7,李鸿;5.微型计算机原理及应用清华大学出版社,2001.2,郑学坚、周斌。7致谢在这次课程设计的撰写过程中,我得到了许多人的帮助。首先我要感谢我的老师在课程设计上给予我的指导、提供给我的支持和帮助,这是我能顺利完成这次报告的主要原因,更重要的是老师帮我解决了许多技术上的难题,让我能把系统做得更加完善。在此期间,我不仅学到了许多新的知识,而且也开阔了视野,提高

1 / 14
下载文档,编辑使用

©2015-2020 m.777doc.com 三七文档.

备案号:鲁ICP备2024069028号-1 客服联系 QQ:2149211541

×
保存成功