版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领
文档简介
1、单片机课程设计设计报告设计题目: 四相步进电机控制系统设计 系 别: 自动化工程系 专 业: 测控技术与仪器 班级学号: 5091016 姓 名: 李建华 指导教师: 吕江涛 张宝健 设计时间: 2011/12/29 目录1 概述.12 四项步进电机2 2.1步进电机.2 2.2步进电机的控制.2 2.3步进电机的工作过程.23 电路图设计.4 3.1 AT89S52概述43.2 最小系统.43.3 复位电路.53.4 拨码电路.53.5 电机驱动电路64 程序设计.7 4.1 主程序框图74.2 步进电机速度控制程序框图84.3 拨码开关输入程序框图.105 总结.115.1心得.115.2
2、 收获.11附录一 源程序.12附录二 电路原理图.151 概述本实验旨在通过控制AT89S52芯片,实现对四相步进电机的转动控制。具体功能主要是控制电机正转、反转、加速与减速。具体工作过程是:给试验箱上电后,拨动启动开关,步进电机按照预先设置的转速和转动方式转动。调整正反转按钮,步进电机实现正反转切换;拨动加速开关,步进电机转速加快,速度达到最大值,不再加速;拨动减速开关时,电机减速转动,速度减到最小速度,停止减速。AT89S52单片机步进电机(驱动)独立按键键盘系统控制框图 实验具体用到的仪器:AT89S52(试验箱上为89C58)芯片、拨码开关单元、四项步进电机等硬件设备。实验具体电路单
3、元有:单片机最小系统、步进电机连接电路、拨码开关连接电路。 2 四项步进电机2.1步进电机步进电机是一种将电脉冲转化为角位移的执行机构。电机的转速、停止的位置只取决于脉冲信号的频率和脉冲数,而不受负载变化的影响,即给电机加一个脉冲信号,电机则转过一个步距角。2.2 步进电机的共组原理 2.2步进电机的控制1.换相顺序控制: 通电换相这一过程称为脉冲分配。例如:混合式步进电机的工作方式,其各相通电顺序为A-B-C-D,通电控制脉冲必须严格按照这一顺序分别控制A,B,C,D相的通断。2.控制步进电机的转向控制: 如果给定工作方式正序换相通电,步进电机正转,如果按反序通电换相,则电机就反转。3.控制
4、步进电机的速度控制:如果给步进电机发一个控制脉冲,它就转一步,再发一个脉冲,它会再转一步。两个脉冲的间隔越短,步进电机就转得越快。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方
5、向转动。四相步进电机按照通电顺序的不同,可分为单四拍、双四拍、八拍三种工作方式。单四拍与双四拍的步距角相等,但单四拍的转动力矩小。八拍工作方式的步距角是单四拍与双四拍的一半,因此,八拍工作方式既可以保持较高的转动力矩又可以提高控制精度。单四拍、双四拍与八拍工作方式的电源通电时序与波形分别如图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-DA本实验使
6、用的是单双八拍循环控制3 电路图设计3.1 AT89S52概述 AT89S52单片机是ATMEL公司推出的高档型AT89S系列单片机中的增强型产品。关于其功能原理及其应用不再赘述。这里只介绍本实验用到的端口和功能。P1口:用户使用的通用I/O口,8位准双向,编程和校验时,可做为高8位地址线;P1.0和P1.1引脚另有第二功能(此实验没用到,不再介绍)P3口:8位准双向I/O口RST:复位信号输入端,高电平有效EA:访问芯片内部和芯片外部程序存储器的选择信号XTAL1,XTAL2:芯片内振荡器反相放大器的输出端和输入端3.2 最小系统单片机最小系统或者称为最小应用系统,就是用最少的元件组成的单片
7、机可以工作的系统,对 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.
8、1 主程序框图 系统分为电机转动、电机正转、电机反转、电机加速、电机减速和电机停止这几个部分组成,其主程序框图如图下所示 开始初始化定义引脚数据等调用定时器函数程序声明定义延时函数响应中断声明定义定时器初始化函数声明定义按键处理函数调用按键子程序等待电机运转与停止电机加速电机减速电机正转与反转4.2 步进电机速度控制程序框图正转部分: 送P1口不同的值,从而改变电机电源的相序,是电机正转,数值分别为0xf8,0xfc,0xf4,0xf6,0xf2,0xf3,0xf1,0xf9。流程图如下 开始延时有外部中断?使用up_date等待反转部分:送P1口不同的值,从而改变电机电源的相序,是电机反转,
9、数值分别为0xf9,0xf1,0xf3,0xf2,0xf6,0xf4,0xfc,0xf8。流程图如下开始延时有外部中断?down_date等待加速部分: 当电机处于正转或反转的时候,按下K2,调用加速程序,是电机每转动一部的延时时间变短,从而实现电机的加速。开始延时有外部中断?速度增加等待减速部分: 当电机处于正转或反转的时候,按下K3,调用加速程序,是电机每转动一部的延时时间变长,从而实现电机的减速。开始延时有外部中断?速度减小等待运行与停止: 按下K1键,系统默认是停止,拨动一次是运行,在拨动一次是停止,即是基数次运行,偶数次停止(一般不会拨动N次,为了看到现象,就拨动少数几次)开始延时有
10、外部中断?奇数次运行偶数次停止等待4.3 拨码开关输入程序框图用于判断P3.1、P3.2、P3.3、P3.4, 调用按键子程序P3.1?运行或停止电机加速电机减速电机正转或反转P3.1?P3.1?P3.1?5 总结5.1心得这次课程设计,历时多天,失败多次,不断总结失败的经验,从中取得进步。经过这次课程设计,我明白了具体怎么来实现一个单片机的项目,熟悉了流程,获取信息的途径。彻底的了解了单片机的用途。5.2 收获 1、能够将理论知识与实践相结合,对理论的理解更透彻。2、对单片机C语言编程,有了初步的了解,为以后的进一步学习打下了基础。3、增强了自己的团队意识,在以后的学习和工作中能够更好的与他
11、人合作。【附录一】 源程序/*/名 称:四项步进电机的控制/功 能:实现电机的正反转,以及电机的转速/指导老师:吕江涛 张宝健/*/#include <reg52.h> #include <absacc.h>#define uchar unsigned char#define uint unsigned intsbit K1= P30;sbit K2= P31;sbit K3= P32;sbit K4= P33;uchar speed=0; /定义转速变量,初始值为25 uchar k=0; /用来记录驱动数组的位数bit flagcon= 0; /定义正反转uchar
12、 code up_data8 = 0xf8,0xfc,0xf4,0xf6,0xf2,0xf3,0xf1,0xf9;/正向驱动数组 uchar code down_data8= 0xf9,0xf1,0xf3,0xf2,0xf6,0xf4,0xfc,0xf8;/反向驱动数组 uchar code motor_h= 0x9e,0xae,0xba,0xc3,0xc9,0xcf,0xd3,0xd7,0xda,0xdd, 0xdf,0xe1,0xe3,0xe4,0xe6,0xe7; /步进电机计数值TH1高位表uchar code motor_l=0x58,0xa2,0x3c,0x1a,0xbe,0x2c
13、,0xad,0x4c,0x6c,0x1e, 0x76,0x7e,0x4a,0xe4,0xc1,0x96; /步进电机计数值TL1低位表 /*/名称:延时函数/功能:定量延时,延时时间=x*1ms/*/ void Delay_ms(uint x)uint i,j;for(i=x;i>0;i-) for(j=112;j>0;j-); /延时约1ms毫秒 /*/ /名称:定时器T1初始化函数/*/ void timer() TMOD = 0x10; / 定时器T1均为工作模式1, 16位定时方式 TH1 = 0xff;TL1 = 0xff; /装定时器T1计数初值 EA=1; /开总中断
14、ET1=1;/开定时器T1中断 TR1 = 0; /暂时不启动定时器T1 /*/按键处理 /*/void KeyProcess()if(K1= 0)Delay_ms(10);if(K1= 0) TR1=TR1; /K1键按下后,启动定时器T1 /再次按下关闭T1,控制步进电机启停if(K2= 0)Delay_ms(10);if(K2= 0)&&(speed!=15)speed+; /转速加1 if(K3= 0)Delay_ms(10);if(K3= 0)&&(speed!=0)speed-;/转速减1 if(K4= 0)Delay_ms(10);if(K4= 0)flagcon= flagcon;/正反转/*/主函数 /*/main() timer(); /定时器T0和T1初始化 while(1) KeyProcess();/按键
温馨提示
- 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
- 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
- 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
- 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
- 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
- 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
- 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。
最新文档
- 《骆驼寻宝记》教学设计
- 环保工程师劳动合同聘用协议书
- 生态农业园区建设施工合同
- 生物科技二手房交易模板
- 租赁车辆防雾霾装备要求
- 城市交通规划公众参与
- 矿山工程招投标模板
- 广告拍摄墙体壁画施工合同
- 居民区翻新施工合同
- 化妆品租赁田地合同
- 乳腺癌放疗后的皮肤护理课件
- 姨妈巾销售策划方案
- 稻虾混养可行性方案
- 视听节目制作
- JGT366-2012 外墙保温用锚栓
- 2024年国家能源集团大渡河公司招聘笔试参考题库含答案解析
- 组建二手车市场服务公司方案
- 网球运动损伤与预防
- 病理性咬指甲的心理动力学分析
- 培养创新思维的临床医学培训方法
- 江苏省扬州市宝应县2023-2024学年八年级上学期期中英语试题(含听力)( 含答案解析 )
评论
0/150
提交评论