毕业设计论文基于单片机的步进电机的控制器设计

上传人:无*** 文档编号:146320959 上传时间:2022-08-31 格式:DOC 页数:34 大小:2.19MB
收藏 版权申诉 举报 下载
毕业设计论文基于单片机的步进电机的控制器设计_第1页
第1页 / 共34页
毕业设计论文基于单片机的步进电机的控制器设计_第2页
第2页 / 共34页
毕业设计论文基于单片机的步进电机的控制器设计_第3页
第3页 / 共34页
资源描述:

《毕业设计论文基于单片机的步进电机的控制器设计》由会员分享,可在线阅读,更多相关《毕业设计论文基于单片机的步进电机的控制器设计(34页珍藏版)》请在装配图网上搜索。

1、2012届毕业生毕业设计说明书题 目: 基于单片机的步进电机的控制器设计 院系名称: 信息科学与工程学院 专业班级: 电子信息科学与技术08级02班 学生姓名: 学 号:指导教师: 教师职称: 副教授 2012年 05月 20日I摘 要步进电机控制方式的实现有多种,可以采用电子电路控制,PLC控制和单片机控制。但是电子电路控制步进电机灵活度不高,PLC控制不能在高频率下进行,控制精度小。而随着科技的飞速发展,单片机的应用正在不断深入,同时带动传统控制检测的更新,用单片机控制步进电机显得更加灵活和方便。本设计是用AT89C52单片机作为核心部件进行逻辑控制及信号产生,用单片机技术和C语言编程设计

2、来进行步进电机的控制。通过人手动按开关实现步进电机的启动与停止。此外此系统还添加了步进电机的正转反转,加速及减速,屏幕显示功能。同时本文也通过了proteus软件的仿真,在仿真结果中能看出近似真实的效果。整个系统采用模块化设计,结构简单可靠,通过按键控制操作方便节省成本。关键词:步进电机 单片机控制 AT89C52 proteus仿真 ITitle The design of the control system of Stepmotor AbstractThe step motor control has a lot of kinds.such as Electronic circuit c

3、ontrol, PLC control and microprocessor controlled .But the flexibility of the electronic circuit to control stepper motor, PLC control at high frequencies, a small control accuracy. With the rapid development of science and technology, the application of SCM is constantly in-depth, at the same time

4、led the update of the traditional control tests with SCM stepper motor control is more flexible and convenient.This paper describes a core component of the AT89C52, as the signal generated by logic control and microcontroller technology and assembly language programming designed stepper motor contro

5、l system, Start and stop of the stepping motor to handle the switch manually by people. In addition, this system also adds a stepper motor forward reverse, acceleration and deceleration, the screen display. Meanwhile, through software simulation in proteus, too can be seen that the approximation of

6、the true effect of the simulation results.Keywords stepper motor microcontroller AT89C52 proteus simulation目 次摘 要IAbstractII1 绪论11.1 课题研究的目的和意义11.2 国内外研究现状11.3 课题主要研究内容和要求22 步进电机常见的控制方案论证32.1 基于电子电路的控制32.2 基于PLC的控制32.3 基于单片机的控制43 系统硬件设计53.1 控制电路53.2 最小系统63.3 驱动电路73.4 显示电路103.5 总体电路图114 系统软件设计134.1 软

7、件设计分析134.2 主程序设计135 仿真与调试165.1 仿真调试的操作步骤165.2 仿真结果16总结20致谢21主要参考文献22附录24301 绪论1.1 课题研究的目的和意义电机是工业发展不可缺少的一大要素,在工业生产中有着重要的作用。随着科技的发展,电机在控制领域的适用范围越来越广。步进电机是一种开环控制的电机,它不需要反馈电路。它是纯粹的数字控制电动机,它将电脉冲信号变成角位移,当给它一个电脉冲时,它就转动一个步进脚。步进电机的运转具有很好的精准性,它按照固定的角度旋转,我们可以通过控制电脉冲频率来控制电机的转速。近30年来,电子,计算机,永磁材料的快速发展,推动了步进电机的发展

8、,因此步进电机的应用有着广阔的前景。步进电机有以下特点:(1)步进电机的角位移与输入脉冲成正比,没有累计误差。(2)步进电机与驱动电路组成的系统,简单而又廉价。(3)易于控制,能快速启动和停止,方便控制方向和转速。(4)步进电机不能直接使用交流直流电源。由于步进电机能够精准定位和方便调速,它被广泛应用在各种自动化控制系统中。随着微电子和计算机技术的发展,使步进电机的控制发生了很大的变革。步进电机的明显优势被广泛应用在电子计算机的许多外围设备中,例如复印机,传真机,软盘驱动器等,同时步进电机也在军用仪器,通信和雷达设备,摄影系统,光电组合装置,以及许多航天工业的系统中得到应用。因此对步进电机的研

9、究深为重要。1.2 国内外研究现状步进电机虽然最早有国外人发明和使用的,但是在中国很早的时候已经得到使用了。早在文革时期,中国的江浙,四川,南京等地都有生产和应用。当时步进电机驱动电路的所有半导体器件,例如逻辑运算电路,电容耦合计数器,触发器等国内都可以完全自主生产。步进电机在国外的应用主要是低功率场合,例如工业设备,打印机,传真机,软盘驱动器,监视摄像头,游戏机和医疗设备。由于现代科技的迅速发展,在国外步进电机在驱动方面的应用逐渐被代替。目前日本是步进电机最大的生产国,如日本伺服公司、东方公司、SANYODENKI和NPM公司等。世界上步进电机生产最好的公司是日本东方公司,性能,质量。生产方

10、法都是一流的。每年日本的步进电机销量达3亿台。国内七十年代后期,步进电机广泛应用于卫星和雷达场合。那时候就生产出来圆形力矩电机。但是在一些高质量控制应用中,我们还不能使用步进电机。到了八十年代国内已经掌握了步进电机的细分控制。这种控制要简单的多。 经过多年的发展,步进电机功能更加强大,种类也很繁多。步进电机以它显著的优点在工业生产和自动化控制中占据着不可动摇的地位。伴随着科技的发展,步进电机将在更多的领域内应用。1.3 课题主要研究内容和要求本设计采用单片机AT89C52来作为整个步进电机控制系统的运动控制核心部件。所选的步进电机是四相五线的,由于步进电机需要高功率驱动,单片机不能与步进电机直

11、接相连,因此我们需要采用了电机驱动芯片ULN2003连接步进电机和单片机。为了显示步进电机转速,我用一个两位数码管来显示速率。再加上一些独立按键来实现步进电机调速,改变转向的功能。这样就构成了一个基本的步进电机控制系统。系统的具体功能和要求如下:1.单片机最小系统的设计;2.独立按键实现步进电机的启停、加速、减速、正转、反转的控制;3.能实现步进电机的转速调节,最低转速为1转/min,最高转速为19转/min;4.步进电机的转速由数码管显示。2 步进电机常见的控制方案论证2.1 基于电子电路的控制 由于步进电机受电脉冲控制,因此要求电脉冲信号的产生,放大全部依靠电子元件来实现。而步进电机需要较

12、大的功率,而电子电路产生的功率较弱,所以必须设计功率放大电路。此方法步进电机的控制系统包含以下三个部分:信号产生电路,信号分配电路,功率放大电路。如下图所示:图1.1基于电子电路控制系统此种方案成本低,设计简单,但是设计逻辑电路需要很多的电子元器件,电路很是复杂。如果我们想改变或者增加功能时,需要从新改变系统中的电路。这样显得灵活度不高。2.2 基于PLC的控制可编程逻辑控制器(plc)是新一代数字逻辑器件,它具有高集成度,高速度,高可靠性等明显的优点。它不但简化了电路设计,降低成本,也提高了系统的可靠性和保密性。用PLC来驱动步进电机,该系统包括以下三个部分PLC、脉冲分配器和步进电机驱动电

13、路组成。采用编程来实现脉冲信号,脉冲分配器将PLC输出的控制脉冲给步进电机相应的接线口上,步进电机驱动电路主要是为了放大脉冲信号。图1.2基于plc控制系统由于PLC的扫描周期小,频率最高只能达到几百Hz,所以步进电机不能在高频条件下运行。并且在速度较高时,由于受到扫描周期的影响,相应的控制精度就降低了。2.3 基于单片机的控制 单片机控制步进电机实现了软件和硬件相结合的控制方式。该系统采用了单片机直接控制步进电机的各相驱动线路。由于单片机的强大功能,我们还可以设计大量的其他功能,例如独立按键控制转速,转向。加入数码管显示速度的等级。单片机对电机的控制有以下好处:(1)使电路更加简单,采用电子

14、电路为了实现控制逻辑需要很多电子元件,而单片机绝大多数的控制电路都可以通过软件实现。(2)可以实现较复杂的控制,单片机有更强的逻辑功能,运算速度快,精度高,有大量的存储单元。(3)灵活性和适应性,用单片机只需要改变程序就可以达到控制的要求。(4)无零点漂移,控制精度高。(5)可提供人际交换,多级联网工作。根据设计要求,采用的方案如下:硬件部分实现电机转动和速度显示功能,包括控制开关模块;电机转动模块和速度显示模块。软件部分实现对步进电机的控制功能,主要设计思想通过控制台控制程序的开关来控制电机的转动,由电机反馈回来的数据经单片机控制显示器显示数据。3 系统硬件设计本设计的硬件电路包括独立按键控

15、制模块,步进电机驱动模块,数码管显示模块和单片机最小系统四大部分。单片机最小系统由时钟电路和复位电路组成,保证单片机正常运行。独立按键控制模块由开关和按键组成,当按下按键时,该系统就按照该按键控制的功能运作。显示模块主要是为了显示电机的工作状态和转速。驱动电路主要是对单片机输出的脉冲进行功率放大,从而驱动电机转动。图3.1 系统总体结构框图3.1 控制电路根据系统的控制要求,控制输入部分设置了顺时针控制,逆时针控制,加速控制,减速控制和停止按键。控制电路如图2所示。当按下按键,内部程序检测P0.1-P0.4的状态变化来调用相应的启动和换向程序,从而实现系统的电机的启动和正反转控制。根据步进电机

16、的工作原理可以知道,步进电机转速的控制主要是通过控制通入电机的脉冲频率,从而控制电机的转速。对于单片机而言,主要的方法有:软件延时和定时中断在此电路中电机的转速控制主要是通过定时器的中断来实现的,通过控制按键的开关和闭合改变速度值存储区中的数据(该数据为定时器的中断次数),这样就改变了步进电机的输出脉冲频率,从而改变了电机的转速。图3.2 控制电路原理图3.2 最小系统 单片机的最小系统一般由时钟电路和复位电路构成。通过时钟电路提供单片机各种微操作基准,通过复位电路使单片机片内存储器初始化。由下图可以看出,时钟电路是在引脚XTAL1和XTAL2外部接一个十二兆的晶振,同时在晶振的两脚分别接了2

17、2pf的电容。晶振的作用是产生震荡时钟脉冲。电容起稳定震荡频率,快速起震的作用。复位电路使由独立按键,200偶电阻和一个10Uf的电容构成。复位电路使单片机从一种确定的状态开始运行。图3.3复位及时钟振荡电路3.3 驱动电路本次设计用ULN2003来驱动步进电机,电路图如图3.7所示。通过单片机的P1.0P1.3输出脉冲到ULN2003的1B4B口,经信号放大后从1C4C出口分别输出到电机的ABCD四相。ULN2003是一种大功率驱动芯片,多用于智能仪器,PLC,步进电机控制。由于控制步进电机需要高功率,而单片机不能直接提供给步进电机。因此我们用ULN2003来放大信号。ULN2003输入只需

18、要5V的电平,但是输出可以高达50V,因此它具有工作电压高,电路增益高,可以提供大功率负载的特点,适应于各种功率驱动电路。图3.4 ULN2003的管脚图 本次设计所用步进电机28BYJ48型四相八拍电机,电压为DC5VDC12V。当对步进电机施加一系列连续不断的控制脉冲时,它可以连续不断地转动。每一个脉冲信号对应步进电机的某一相或两相绕组的通电状态改变一次,也就对应转子转过一定的角度(一个步距角)。当通电状态的改变完成一个循环时,转子转过一个齿距。四相步进电机可以在不同的通电方式下运行,常见的通电方式有单(单相绕组通电)四拍(A-B-C-D-A),双(双相绕组通电)四拍(AB-BC-CD-D

19、A-AB-),八拍(A-AB-B-BC-C-CD-D-DA-A),本次设计采用单相绕组。图3.5 28BYJ48型步进电机的参数橙黄粉蓝十六制(P1口)10000x0811000x0c01000x0401100x0600100x0200110x0300010x0110010x09图3.6 步进电机工作时序波形图及逆时针旋转的代码由此可得电机逆时针旋转的相0x08,0x0c,0x04,0x06,0x02,0x03,0x01,0x09图3.7 步进电机驱动电路 3.4 显示电路为了能看出步进电机的转速,我们用显示电路的数码管显示电机的速度,主要是利用了单片机的P0口接一个两位的共阳极数码管。数码管

20、a、b、c、d、e、f、g、dp分别接P0.0P0.7口.数码管的公共角1,2分别接p2.0,p2.1。本次所用的数码管参数和管脚图如下:图3.8 两位共阳数码管得参数图3.9 步进电机显示电路3.5 总体电路图 把各个部分的电路图组合成总电路图,如下图所示:图3.10 总体电路图4 系统软件设计4.1 软件设计分析本次采用的步进电机是五相四线的,查该电机的工作参数我们可以看出它的工作电压时+5V,因此我们可以直接把他正极与单片机正极相连,供5v的电压。由总体的电路图我们可以看出步进电机的四个接口与ULN2003相接。ULN2003与单片机P1口相连。单片机P0口接一个两位共阳极数码管。 通过

21、上述的分析我们发现要实现系统的功能,我们要设计一下几个模块程序:主程序,延时程序,按键子程序,数码管显示程序。为了实现操作灵活性,随时可以加速减速,我们采用定时器中断。当通电后,单片机首先检测加速减速按键是否按下,同时数码管显示速度等级。当按一下正转或者反转按键时候,电机开始转动。按下停止键电机立马停止转动。通过软件编程实现系统的功能,系统功能运行的好坏,与程序设计好坏有关。4.2 主程序设计当我们给系统供入5V电压时,由复位电路给系统进行初始化。然后便开始执行按键查询等待相应的操作,当有按键按下的时,程序便调用并执行相应的子程序,下图为主流程图:开始图4.1主程序按键子程序:1、延时子程序:

22、在本延时子程序当中每调用一次延时子程序延时时间是1毫秒。2、按键响应子函数:在本设计当中按键的一端接地,另一端接单片机的对应端口,所以当按键按下,既是将单片机对应端口电平拉低。所以在编程的时候判断按键按下是低电平有效。图4.2画出的是电机增速和减速的子程序框图。图4.2速度子程序5 仿真与调试5.1 仿真调试的操作步骤本次采用的仿真软件是proteus,采用的编程工具是keil。具体操作如下:1) 在Protues中画出系统电路图 2)编写程序并在keil中编译并生成hex文件。3)把在keil中编译生成的HEX文件载入AT89C52芯片中;4) 运行仿真。 5.2 仿真结果 仿真结果如下图所

23、示: 当点下proteus的play键时候,此时数码管显示速度为零,电机不转。图5.1 仿真原理图当按加速按键时候,速度会从01一直加到19。共有十个速度等级图5.2 速度为一显示图5.3 速度为9的显示按下逆时针按键,电机会以所显示的速度逆时针转动。顺时针亦同。图5.4 电机转动仿真图总结经过为半学期的学习和努力,本次设计终于完成了。为此我学到了很多东西。1、我进一步了解了单片机的工作原理,掌握了步进电机控制系统的组成原理。通过本次的设计和调试,我补充和巩固了自己已学的电子理论知识,同时也提高了动手和排除故障能力。2、我了解了步进电机的发展,工作原理和控制方式。步进电机应用于生活和工业中的各

24、个方向,使我对步进电机的兴趣越来越大。3、本次课程设计我查阅大量书籍、专业网站、论坛等,通过反复对比,采用了功能相对强大,设计相对简单的设计方法。通过与其他人设计的对比,我学到了很多东西,找到了自己设计方案的优缺点。应该说本次设计还是基本达到了设计的要求,通过独立按键我们可以很方便的控制电机的正反转加速和减速。通过一个两位数码管我们可以清楚的看到步进电机转动的速度。该系统的优点就是设计简单,操作方便。但是缺点是显示模块也无法看出电机是正传还是反转。如果把数码管换成LCD,同时显示速度和转向,这样就更好了。 在这次课程设计中,我发现了自己知识面还是比较欠缺,深刻的体会到学习永无止境,在以后的学习

25、和工作中要时刻鞭策自己,不要懈怠,不能停止学习。努力提高自己的知识水平和专业技能。致 谢本次设计是在孙福艳老师的精心指导下完成的。从论文的选题到各个研究阶段,自始自终得到了她的悉心指导,为本设计的完成倾注了大量的心血。孙老师学识渊博,为人处世认真负责,时刻监督我设计进度,同时在设计需要的时候都能马上帮我解决。孙老师严谨求实的科研态度、执着追求的敬业精神以及平易近人的工作作风,使我终生受益。她不仅一直对我的课题研究和论文进行了具体的指导;而且在思想上,也给我提供了很大的帮助和支持。在此,向孙老师表示衷心的感谢和深深的敬意!同时也要感谢信息科学与工程学院的全体老师,感谢他们的帮助与教导,使我在河南

26、工业大学度过了愉快而又充实的大学生活,不仅学习专业理论知识、提高了科研能力,还加强了自身修养、得到了为人处事等全方面的锻炼。在本次设计中我也得到同学和朋友的大力支持和帮助,同时感谢他们四年来的支持和关怀。最后,谨向在百忙之中抽出时间来参加我的论文答辩的各位老师表示衷心的感谢。主要参考文献1 李群芳 肖看. 单片机原理借口及应用M . 北京:清华大学出版社,1997.2 坂本正文. 步进电机应用技术M . 日本:科学出版社,2010.3 何希才 姜玉祥,等. 电动机控制电路应用实例M . 北京:中国电力出版社,1998.4 于海生,等. 微型计算机控制技术M . 北京:清华大学出版社,1999.

27、5 王福瑞,等. 单片机微机测控系统设计大全M . 北京:北京航空航天大学出版社,1998.6 xiao zhen shan ,Application of SCM on the step motor control system J. Mechanical and Electrical Engineering Technology, 2004,33(1):69-707 YING Fang-qin.research and implementation of stepping motor controller based on FPGAJ.Modern Electronics Techniqu

28、e,2011(02):198-201.8 季维发,过润秋,严武升等. 机电一体化技术M .北京:电子工业出版社,1995.9 郭敬枢,庄继东,孔峰. 微机控制技术M . 重庆:重庆大学出版社,1994.10 刘国荣. 单片微型计算机技术M . 北京:机械工业出版社,1996.11 王福瑞. 单片微机测控系统设计大全M . 北京:北京航空航天大学出版社,1998.12 何立民. 单片机应用技术选编M . 北京:北京航空航天大学出版社,1993.13 王晓明等:电动机的单片机控制1 北京: 北京航空航天大学出版社, 1992.14 王润孝,秦现生编著1 机床数控原理与系统1 西北工业大学出版社,1

29、997.15 李伯成,侯伯李等编1IBM - PC 微机应用系统设计1西安电子科技大附录C语言程序如下:#include #include#define uchar unsigned char#define uint unsigned intuchar code ccw=0x08,0x04,0x02,0x01; /逆时针旋转相序uchar code cw=0x01,0x02,0x04,0x08; /顺时针旋转相序unsigned char code seg=0,1,2,3,4,5,6,7;/分别对应相应的数码管点亮,即位码uchar code table=0x3f,0x06,0x5b,0x4f

30、,0x66,0x6d,0x7d,0x07,0x7f,0x6f;/共阴极数码管显示表uchar code ccw8=0x08,0x0c,0x04,0x06,0x02,0x03,0x01,0x09; /8拍旋转相序表uint time,show1,show2,sym,temp,t,a,flag,i,j,rpm,n;sbit inc=P32;/加速sbit dec=P33;/减速sbit keyccw=P30;/逆时针转sbit keycw=P31;/顺时针转sbit pause=P36;/暂停sbit fir=P20;/第一数码管sbit sec=P21;/第二数码管void init();/初始

31、化定时器0,1,串口void direc();/按键控制转向void speedctl();/按键控制转速void display();/速度显示函数void delaynms(uint aa);/1ms延时函数void main()init();while(1)speedctl();direc();display();void init()TMOD=0X21;/定时器1为方式2,定时器0为方式1TH1=0xFD;TL1=0xFD;TH0=(65536-1000)/256;/1毫秒定时中断TL0=(65536-1000)%256;TR1=1;/启动定时器1EA=1;/打开总中断ET0=1;/允

32、许定时器0中断TR0=1;/启动定时器0void speedctl() if(inc = 0) /加速n+;if(n = 11)n=10;while(!inc)display();time=0;else if(dec=0) /减速n-;if(n=0)n=1;while(!dec)display();time=0;switch(n)case 1:t=937;/里面转一圈937ms,基准速度一分钟一圈rpm=1;break;case 2:t=312;rpm=3;break;case 3:t=187;rpm=5;break;case 4:t=133;rpm=7;break;case 5:t=104;

33、rpm=9;break;case 6:t=85;rpm=11;break;case 7:t=72;rpm=13;break;case 8:t=62;rpm=15;break;case 9:t=55;rpm=17;break;case 10:t=49;rpm=19;break;void direc()if(keyccw=0)flag=1;time=0;else if(keycw=0)flag=2;time=0;else if(pause=0)flag=0;void display()P0 = tablerpm/10;P2 = seg0;delaynms(5);P0 = tablerpm%10;P2 = seg1;delaynms(5);void delaynms(uint aa)uchar bb;while(aa-)for(bb=0;bb250;bb+); /1ms基准延时程序void timer0() interrupt 1TH0=(65536-1000)/256;TL0=(65536-1000)%256;time+;if(flag=1)/逆时针转if(time=t)time=0;P1=ccwi;i+;if(i=4)i=0;else if(flag=2)/顺时针转if(time=t)time=0;P1=cwi;i+;if(i=4)i=0;

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

copyright@ 2023-2025  zhuangpeitu.com 装配图网版权所有   联系电话:18123376007

备案号:ICP2024067431-1 川公网安备51140202000466号


本站为文档C2C交易模式,即用户上传的文档直接被用户下载,本站只是中间服务平台,本站所有文档下载所得的收益归上传人(含作者)所有。装配图网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对上载内容本身不做任何修改或编辑。若文档所含内容侵犯了您的版权或隐私,请立即通知装配图网,我们立即给予删除!