ImageVerifierCode 换一换
格式:DOCX , 页数:31 ,大小:1.07MB ,
资源ID:22761122      下载积分:3 金币
快捷下载
登录下载
邮箱/手机:
温馨提示:
快捷下载时,用户名和密码都是您填写的邮箱或者手机号,方便查询和重复下载(系统自动生成)。 如填写123,账号就是123,密码也是123。
特别说明:
请自助下载,系统不会自动发送文件的哦; 如果您已付费,想二次下载,请登录后访问:我的下载记录
支付方式: 支付宝    微信支付   
验证码:   换一换

加入VIP,免费下载
 

温馨提示:由于个人手机设置不同,如果发现不能下载,请复制以下地址【https://www.bdocx.com/down/22761122.html】到电脑端继续下载(重复下载不扣费)。

已注册用户请登录:
账号:
密码:
验证码:   换一换
  忘记密码?
三方登录: 微信登录   QQ登录  

下载须知

1: 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。
2: 试题试卷类文档,如果标题没有明确说明有答案则都视为没有答案,请知晓。
3: 文件的所有权益归上传用户所有。
4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
5. 本站仅提供交流平台,并不能对任何下载内容负责。
6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。

版权提示 | 免责声明

本文(步进电机控制系统设计毕业设计论文Word格式文档下载.docx)为本站会员(b****7)主动上传,冰豆网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对上载内容本身不做任何修改或编辑。 若此文所含内容侵犯了您的版权或隐私,请立即通知冰豆网(发送邮件至service@bdocx.com或直接QQ联系客服),我们立即给予删除!

步进电机控制系统设计毕业设计论文Word格式文档下载.docx

1、3、通过LED数码管显示电机运行状态特点。该系统具有成本低、控制方便的特点。关键词:单片机 步进电机 调速控制Stepper motor control system designAbstractThe design by ATMEL89C51 Microcontroller stepper motor control, mainly the stepper motor controller, drive circuit and LED display circuit design to achieve a stepper motor control. It has the following

2、 features: 1. Press different keys, respectively stepper motor clockwise and counterclockwise; 2, motor running state may be reversing, acceleration and deceleration; 3, through the LED digital display motor running features. The system is low cost, convenient control features.Key words: microcontro

3、ller; Stepper motor; Speed Control1.引言1.1步进电机步进电机是一种将电脉冲转化为角位移的执行机构。电机的转速、停止的位置只取决于脉冲信号的频率和脉冲数,而不受负载变化的影响,即给电机加一个脉冲信号,电机则转过一个步距角。步进电机最早是在1920年由英国人所开发。1950年后期晶体管的发明也逐渐应用在步进电机上,这对于数字化的控制变得更为容易。以后经过不断改良,使得今日步进电机已广泛运用在需要高定位精度、高分解性能、高响应性、信赖性等灵活控制性高的机械系统中4。在生产过程中要求自动化、省人力、效率高的机器中,我们很容易发现步进电机的踪迹,尤其以重视速度、位置

4、控制、需要精确操作各项指令动作的灵活控制性场合步进电机用得最多。步进电机作为执行元件,是机电一体化的关键产品之一,广泛应用在各种自动化控制系统中。随着微电子和计算机技术的发展,步进电机的需求量与日俱增,在各个国民经济领域都有应用14。1.2研究的目的和意义步进电机是将电脉冲信号变换成角位移或直线位移的执行部件。步进电机可以直接用数字信号驱动,使用非常方便。一般电动机都是连续转动的,而步进电动机则有定位和运转两种基本状态,当有脉冲输入时步进电动机一步一步地转动,每给它一个脉冲信号,它就转过一定的角度。步进电动机的角位移量和输入脉冲的个数严格成正比,在时间上与输入脉冲同步,因此只要控制输入脉冲的数

5、量、频率及电动机绕组通电的相序,便可获得所需的转角、转速及转动方向5。在没有脉冲输入时,在绕组电源的激励下气隙磁场能使转子保持原有位置处于定位状态。因此非常适合于单片机控制。步进电机还具有快速启动、精确步进和定位等特点,因而在数控机床,绘图仪,打印机以及光学仪器中得到广泛的应用。步进电动机已成为除直流电动机和交流电动机以外的第三类电动机。步进电机可以作为一种控制用的特种电机,利用其没有积累误差(精度为100%)的特点,广泛应用于各种开环控制。随着微电子和计算机技术的发展,步进电动机的需求量与日俱增,研制步进电机驱动器及其控制系统具有十分重要的意义。1.3步进电机工作原理1.3.1步进电机的控制

6、 1. 换相顺序控制:通电换相这一过程称为脉冲分配。例如:混合式步进电机的工作方式,其各相通电顺序为A-B-C-D,通电控制脉冲必须严格按照这一顺序分别控制A,B,C,D相的通断。2.控制步进电机的转向控制:如果给定工作方式正序换相通电,步进电机正转,如果按反序通电换相,则电机就反转。3.控制步进电机的速度控制:如果给步进电机发一个控制脉冲,它就转一步,再发一个脉冲,它会再转一步。两个脉冲的间隔越短,步进电机就转得越快。1.3.2步进电机的工作过程图1.1步进电机原理图开关SB接通电源,SA、SC、SD断开,B相磁极和转子0、3号齿对齐,同时,转子的1、4号齿就和C、D相绕组磁极产生错齿,2、

7、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方向转动。四相步进电机按照通电顺序的不同,可分为单四拍、双四拍、八拍三种工作方式。单四拍与双四拍的步距角相等,但单四拍的转动力矩小。八拍工作方式的步距角是单四拍与双四拍的一半,因此,八拍工作方式既可以保持较高的转动力矩又可以提高控制精度1。单四拍、双四拍与八拍工作方式的电源通电时序

8、与波形分别如图1.2a、b、c所示:a.单四拍 b. 双四拍 c八拍图1.2步进电机工作时序波形图对步进电机四个绕组依次实现如下方式的循环通电控制:单四拍运行:正转A-B-C-D; 反转D-C-B-A双四拍运行:正转AB-BC-CD-DA;反转DC-CB-BA-AD八拍运行: 正转A-AB-B-BC-C-CD-D-DA本实验使用的是单双八拍循环控制1.3.3步进电机的转速计算四相步进电机有两种运行方式,一、四相四拍;二、四相八拍。1.拍数:完成一个磁场周期性变化所需脉冲数或导电状态用n表示,或指电机转过一个齿距角所需脉冲数,以四相电机为例,有四相四拍运行方式即AB-BC-CD-DA-AB,四相

9、八拍运行方式即 A-AB-B-BC-C-CD-D-DA-A.2.步距角:对应一个脉冲信号,电机转子转过的角位移用表示。=360度(转子齿数J*运行拍数),以常规二、四相,转子齿为50齿电机为例。四拍运行时步距角为=360度/(50*4)=1.8度(俗称整步),八拍运行时步距角为=360度/(50*8)=0.9度(俗称半步)11。这两个概念清楚后,我们再来计算转速,以基本步距角1.8的步进电机为例(现在市场上常规的二、四相混合式步进电机基本步距角都是1.8),四相八拍运行方式下,每接收一个脉冲信号,转过0.9,如果每秒钟接收400个脉冲,那么转速为每秒400X0.9=360,相当与每秒钟转一圈,

10、每分钟60转。其他情况同理可以计算得出。2.系统概述2.1系统实现功能1、按下不同的键,分别使步进电机实现正反旋转;3、通过LED数码管显示电机转速与运行状态特点;4、按下复位键即可停止运行。2.2系统总体构成系统由AT89C52单片机、复位电路和晶振电路构成的单片机最小系统,按键电路模块,数码管显示模块和电机驱动模块构成。图2.1系统总体构成框架图2.3系统工作流程2.3.1主程序框图图2.2. 主程序框图系统主程序先要定义相关引脚数据,声明相关函数,然后进入到主程序,主程序我这边是放的按键处理程序,通过按键选择正反加减速;按键处理程序之后是调用电机旋转函数,实现电机的正反加减速运行;电机旋

11、转程序之后是调用数码管显示程序,用来显示电机正反加减速和转速;然后在进行按键处理程序,循环进行。2.3.2按键处理程序框图图2.3 按键处理程序框图按键处理程序放在主函数里面,主要判断按键状态,如果有按键按下,那么定义相关数据,与之后电机旋转函数共同实现相关功能。3.硬件电路设计硬件方面采用的是普中科技的一款STC89C52单片机开发板,其具备本次设计所需的所有模块。查看其单片机开发板说明得知,各个模块之间的相关电路已经通过一定的方式连接,所以在硬件设计过程中需要根据其说明来连线,也需要更改相关程序来适应其电路。3.1单片机最小系统单片机最小系统或者称为最小应用系统,就是用最少的元件组成的单片

12、机可以工作的系统,对 52系列单片机来说,最小系统一般应该包括:单片机、复位电路、晶振电路。图3.1最小系统2.3.1 AT89C52单片机简介AT89C52单片机是ATMEL公司推出的高档型AT89S系列单片机中的增强型产品。关于其功能原理及其应用不再赘述。这里只介绍本实验用到的端口和功能。(1)VCC(40):电源+5V。(2)VSS(20):接地,也就是GND。(3)XTL1(19)和XTL2(18):振荡电路。单片机是一种时序电路,必须有脉冲信号才能工作,在它的内部有一个时钟产生电路,有两种振荡方式,一种是内部振荡方式,只要接上两个电容和一个晶振即可;另一种是外部振荡方式,采用外部振荡

13、方式时,需在XTL2上加外部时钟信号。(4)PSEN(29):片外ROM选通信号,低电平有效。(5)ALE/PROG(30):地址锁存信号输出端/EPROM编程脉冲输入端。(6)RST/VPD(9):复位信号输入端/备用电源输入端。(7)EA/VPP(31):内/外部ROM选择端(8)P0口(39-32):双向I/O口。(9)P1口(1-8):准双向通用I/0口。(10)P2口(21-28):准双向I/0口图3.2. AT89C52单片机引脚图2.3.2 复位电路复位电路采用手动复位和上电自动复位。上电自动复位:在单片机上电的瞬间,RC电路充电,由于电容上电电压不能突变,所以RST引脚出现高电

14、平,RST引脚出现的高电平将会随着对电容C的充电过程而逐渐回落。手动复位:当按下复位按钮时,RST出现高电平,实现复位。本设计方案中将复位按键作为停止键使用,当按下复位按钮之后,电路停止运行,回到刚通电时状态。图3.3复位电路2.3.3振荡电路振荡电路与复位电路组成单片机最小系统,本电路为12MHz晶振电路。图3.4晶振电路3.3按键电路模块K1K4为本次设计的实现点机正反加减速旋转的开关按键,与P3口相连。K2,K3为正反转控制按键,K1,K4为加减速控制按键,当K2或者K3按下时,电机才会转动。图3.5独立按键电路3.4数码管显示电路模块数码管显示电路由74573及数码管构成,与单片机P0

15、口相连。数码管显示电路必须要和138译码器电路组合使用才能正常显示相关数字,否则无效。本设计采用的是前三位显示电机转速,后两位显示电机正反转(数字1和2表示)和加减速(数字3和4表示)。图3.6.数码管显示电路3.4.1位码选择电路位码选择电路采用138译码器在本电路中起到位码选择的作用,与P2口相连,本设计需要用到总共8个数码管,其中有字符显示的有5个。图3.7 138译码器3.4.2 LED电路由于在硬件方面缺少步进电机,所以采用LED发光二极管代替步进电机,实现现象(仿真中不涉及,在硬件上体现)。图3.8 LED电路3.5电机驱动模块本设计采用UN2003驱动五项四线步进电机。图3.9

16、UN2003电机驱动电路4.软件电路设计4.1按键处理程序设计4.1.1按键处理程序框图图4.1 按键处理程序框图4.1.2按键处理程序代码if(K1=0) /判断K1按键是否按下 while(!K1); n=1; /若K1按键按下,则n记为1 if(K2=0) /判断K2按键是否按下K2); n=2; /若K2按键按下,则n记为2 if(K3=0) /判断K3按键是否按下K3); m=3; /若K3按键按下,则m记为3Speed=10; /转速变量为10 if(K4=0) /判断K4按键是否按下K4); m=4; /若K4按键按下,则m记为4Speed=20; /转速变量为204.2电机旋转

17、程序设计4.2.1电机旋转程序框图图4.2电机旋转程序框图电机旋转程序为调用函数,通过判断按键处理程序给出的n的值来判定是正转还是反转,判断m的值来确定加减速。4.2.2电机旋转程序代码void Motor() unsigned char i; for(i=0;i8;i+) if(n=1) GPIO_MOTOR = FFWi&0x1f; /取数据 if(n=2) GPIO_MOTOR = FFZi& /取数据 Delay(Speed); /调节转速 display(); /调用显示函数4.3数码管显示程序设计4.3.1数码管显示框图图4.3数码管显示框图数码管显示电路主要包含显示电机转速,电机

18、所处正反加减状态的功能。通过138译码器电路选择相应位码。4.3.2数码管显示程序代码void display() LSA=1;LSB=0;LSC=0; /数码管位选 GPIO_DIG=DIG_CODEm; /送段码,此处为高低速显示 Delay(2); LSA=0; GPIO_DIG=DIG_CODEn; /送段码,此处为正反转显示LSB=1;LSC=1; GPIO_DIG=DIG_CODEbw; /送段码,此处为转速百位显示 GPIO_DIG=DIG_CODEsw; /送段码,此处为转速十位显示 GPIO_DIG=DIG_CODEgw; /送段码,此处为转速个位显示5.系统调试5.1 软件

19、仿真利用Proteus仿真软件按照电路DXP原理图进行仿真电路的搭建,并进行相关调试与仿真,仿真图结果下图5.1、图5.2所示:图5.1 仿真图数码管结果图5.2 仿真图电机仿真结果为高速正转,转速187转每分钟。Proteus仿真图全图见附件。5.2 实物调试开发板我们选择的是普中科技的一款STC89C51单片机开发板,由于没有步进电机,所以为了实现功能,用了4个led 发光二极管来代替步进电机,通过观察发光二极管的点亮顺序与亮灭速度来表现步进电机的正反、快慢旋转。实物图如下图所示(图示为高速正转,转速187转/min):图5.3 硬件实物结果图5.3 调试结果及现象说明软件调试实现了按键控

20、制电机正反高低速旋转运行与转速显示,硬件调试则实现了led数码管正反快慢速循环点亮与数码管显示。相关现象说明如下表表5.1与表5.2所示:表5.1:数码管显示与电机运行关系表第7位显示第8位显示341正转高速正转慢速正转初速2反转高速反转慢速反转初速待机表二:按键与电机运行关系表后按先按K1K4无按键复位K2停止运行K3不运行6.总结该系统设计通过单片机AT89S52来控制步进电机的运转状况,实现了占用CPU时间少,效率高;易控制步进电机的转速;易控制电机的转向;提高了步进电机的步进精度等。本次课程设计在实现过程中,出现的问题主要在数码管显示方面。在基础电路设计方面,通过K1K4按键实现步进电

21、机正反加减速运行方面实现较为容易,当加上数码管显示电路就出现了不少问题。经过不断的调试,修改延时时间,最后基本解决问题。通过这次的单片机课程设计,我们收获了很多。对单片机,尤其是89c51单片机的理解又进了一步,对c语言编程有了更清楚的认识,更是领略了单片机世界的神奇。7.参考文献1张洪润,蓝清华. 单片机应用技术教程M.北京:清华大学出版社,1997.2秦曾煌. 电工学M.北京:高等教育出版社,1999.3常斗南,等. 可编程序控制器原理、应用、实验M.北京:机械工业出版社,1998.4于海生,等. 微型计算机控制技术M.北京:清华大学出版社,1999.5王福瑞,等. 单片机微机测控系统设计

22、大全M.北京:北京航空航天大学出版社,1998.6陈理壁. 步进电机及其应用M.上海:上海科学技术出版社,1989.7刘保延,等. 步进电机及其驱动控制系统M.哈尔滨:哈尔滨工业大学出版社,1997.8季维发,过润秋,严武升等. 机电一体化技术M.北京:电子工业出版社,1995.9郭敬枢,庄继东,孔峰. 微机控制技术M.重庆:重庆大学出版社,1994.10刘国荣. 单片微型计算机技术M.北京:机械工业出版社,1996.11王福瑞. 单片微机测控系统设计大全M.北京:12何立民. 单片机应用技术选编M.北京:北京航空航天大学出版社,1993.13 康华光,皱筹彬. 电子技术基础(数字部分)M.高

23、等教育出版社.200014 王昊,李昕. 集成运放应用电路设计360例M.电子工业出版社.200715 康华光,陈大钦. 电子技术基础(模拟部分)M.高等教育出版设.200016 张庆双. 电源应用电路M.机械工业出版社.200517 张先庭主编. 单片机原理、接口与C51应用程序设计M.国防工业出版社.201118 李光飞, 楼苗然主编. 51系列单片机M.北京航空航天大学出版社.20038.附件8.1程序清单/*/名 称:/功 能:实现电机的正反转,快慢转,以及电机的转速显示/*/#include reg51.h#define GPIO_MOTOR P1 /定义端口#define GPIO

24、_DIG P0sbit K1=P31; sbit K2=P32;sbit K3=P30;sbit K4=P33;sbit LSA=P22;sbit LSB=P23;sbit LSC=P24;unsigned char code FFW8=0xf1,0xf3,0xf2,0xf6,0xf4,0xfc,0xf8,0xf9;/正向驱动数组unsigned char code FFZ8=0xf9,0xf8,0xfc,0xf4,0xf6,0xf2,0xf3,0xf1; /反向驱动数组unsigned char code DIG_CODE10=0x3f,0x06,0x5b,0x4f,0x66,0x6d,0x

25、7d,0x07,0x7f,0x6f;/数码管段码09unsigned char Speed,m,n,z,bw,gw,sw;void Delay(unsigned int t);void Motor();void display();/* 函 数 名 : Delay* 函数功能 : 延时函数*/void Delay(unsigned int t) unsigned int k; while(t-) for(k=0; k80;k+) main 主函数void main(void) Speed=15; /定义转速变量,初始值为15 m=0; /初始速度档位显示为0 while(1) if(K1=0) /判断K1按键是否按下

copyright@ 2008-2022 冰豆网网站版权所有

经营许可证编号:鄂ICP备2022015515号-1