基于单片机控制的步进电机的毕业论文课程设计呕心沥血整理版Word文档下载推荐.docx
《基于单片机控制的步进电机的毕业论文课程设计呕心沥血整理版Word文档下载推荐.docx》由会员分享,可在线阅读,更多相关《基于单片机控制的步进电机的毕业论文课程设计呕心沥血整理版Word文档下载推荐.docx(82页珍藏版)》请在冰豆网上搜索。
![基于单片机控制的步进电机的毕业论文课程设计呕心沥血整理版Word文档下载推荐.docx](https://file1.bdocx.com/fileroot1/2023-1/24/4d90b101-e4ca-4e82-9769-e3dbcf7cb18a/4d90b101-e4ca-4e82-9769-e3dbcf7cb18a1.gif)
2。
2课程设计目的、要求及设计方案论证
2。
1设计目的
(1)设计并实现给定步进电机的控制;
(2)进一步掌握步进电机的控制方法;
(3)进一步掌握单片机硬件和软件的综合设计方法。
2.2设计要求实现功能
(1)电机工作方式为三相双三拍,初始转速100r/min;
(2)能够实现电机的启/停功能;
(3)能够实现电机的正/反转功能;
(4)能够实现电机的加/减速功能。
2.3设计方案论证
(1)控制方式的确定
步进电机控制是一个比较精确的控制,步进电机开环控制系统具有成本低、简单、控制方便等优点,在采用单片机的步进电机开环系统中,控制系统的CP
3
脉冲的频率或者换向周期实际上就是控制步进电机的运行速度。
系统可用两种办法实现步进电机的速度控制。
一种是延时,一种是定时。
延时方法是在每次换向之后调用一个延时子程序,待延时结束后再次执行换向,这样周而复始就可发出一定频率的CP脉冲或换向周期。
延时子程序的延时时间与换向程序所用的时间和,就是CP脉冲的周期,该方法简单,占用资源少,全部由软件实现,调用不同的子程序可以实现不同速度的运行。
但占用CPU时间长,不能在运行时处理其他工作。
因此只适合较简单的控制过程.定时方法是利用单片机系统中的定时器定时功能产生任意周期的定时信号,从而可方便的控制系统输出CP脉冲的周期.
(2)驱动方式的确定
步进电机的驱动一般有两种方法,一种是通过CPU直接来驱动,这种方法一般不宜采用,因为CPU的输出电流脉冲是特别小的它不能足以让步进电机的转动;
别一种是通过CPU来间接驱动,就是把从CPU输出的信号进行放大,然后直接驱动或是再通过光电隔离间接来驱动步进电机,这种方法比较安全可靠。
固本次设计应采用CPU间接驱动步进电机.用编码器的测速发电机作为转速测量工具,因为选择了闭环控制,就必须有反馈元件,反馈元件一般有两种,一种是采用同轴的测速发电机,把步进电机的转速反馈回来,然后通过显示器显示出来并对步进电机进行调节;
别一种是通过光同轴的电编码器把步进电机的转速反馈回来对步进电机进行调节;
两者相比,后者的设计比较简单,价格便宜,安全可靠,污染少。
固一般采用后者,用光电骗码器作为反馈元件。
(3)驱动电路的选择
步进电机的驱动电路有多种,但最为常用的就是单电压驱动、双电压驱动、斩波驱动、细分控制驱动等.但因本次设计对步进电机的精度要求比较高转速的调节范围比较广,固应选用驱动芯片8713来驱动,并通过软件来实现步进电机的调速。
(4)基本方案的确定
因本次设计的要求,选用三相双三拍步进电机,单片机选用89C51作为控制器。
选用8279来驱动显示和键盘。
选用8713作为步进电机的驱动芯片并通过光电耦合来驱动步进电机.然后用与步进电机同轴的光电编码器作为反馈元件,并把反馈回的信号经CPU处理后再由显示器显示出来.
第三章系统硬件电路设计
3.1
单片机的选择
本次设计以CPU选用89C5l作为步进电机的控制芯片.89C51的结构简单并可以在编程器上实现闪烁式的电擦写达几万次以上.使用方便等优点,而且完全兼容MCS5l系列单片机的所有功能.AT89C51是一种带4K字节闪烁可编程可擦除只读存储器(FPEROM-FAlshProgrAmmABleAndErAsABleReAdOnlyMemory)的低电压,高性能CMOS8位微处理器,俗称单片机。
该器件采用ATMEL高密度非易失存储器制造技术制造,与工业标准的MCS—51指令集和输出管脚相兼容。
由于将多功能8位CPU和闪烁存储器组合在单个芯片中,ATMEL的AT89C51是一种高效微控制器,为很多嵌入式控制系统提供了一种灵活性高且价廉的方案
3。
1单片机的引脚功能
(1)VCC(40):
电源+5V。
(2)VSS(20):
接地,也就是GND.
(3)XTL1(19)和XTL2(18):
振荡电路。
单片机是一种时序电路,必须有脉冲信号才能工作,在它的内部有一个时钟产生电路,有两种振荡方式,一种是内部振荡方式,只要接上两个电容和一个晶振即可;
另一种是外部振荡方式,采用外部振荡方式时,需在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口.
2
主要特性:
与MCS—51兼容4K字节可编程闪烁存储器寿命:
1000写/擦循环数据保留时间:
全静态工作:
0Hz—24Hz三级程序存储器锁定、128*8位内部RAM、32可编程I/O线、两个16位定时器/计数器、5个中断源、可编程串行通道、低功耗的闲置和掉电模式、片内振荡器和时钟电路
(1)振荡器特性:
XTAL1和XTAL2分别为反向放大器的输入和输出。
该反向放大器可以配置为片内振荡器.石晶振荡和陶瓷振荡均可采用。
如采用外部时钟源驱动器件,XTAL2应不接。
有余输入至内部时钟信号要通过一个二分频触发器,因此对外部时钟信号的脉宽无任何要求,但必须保证脉冲的高低电平要求的宽度.
(2)芯片擦除:
整个PEROM阵列和三个锁定位的电擦除可通过正确的控制信号组合,并保持ALE管脚处于低电平10ms来完成。
在芯片擦操作中,代码阵列全被写“1”且在任何非空存储字节被重复编程以前,该操作必须被执行.
此外,AT89C51设有稳态逻辑,可以在低到零频率的条件下静态逻辑,支持两种软件可选的掉电模式。
在闲置模式下,CPU停止工作.但RAM定时器,计数器,串口和中断系统仍在工作。
在掉电模式下,保存RAM的内容并且冻结振荡器,禁止所用其他芯片功能,直到下一个硬件复位为止。
3.2
步进电机的选择
因本次设计的要求,步进电机应选用三相双三拍的步进电机,具体说明如下:
三相双三拍控制模型:
正转控制模型
步序
工作
状态
控制模型
二进制
十六进制
1
AB
00000011
03H
BC
00000110
06H
CA
00000101
05H
反转控制模型
控制绕组的通电方式为AB—BC-CA-AB或AB—CA—BC—AB,每拍同时有两相绕组通电,三拍为一个循环,当A、B两相控制绕组同时通电时,转子齿的位置应同时考虑到两对定子极的作用,只有A相极和B相极对转子齿所产生的磁拉力相平衡才是转子的平衡位置。
双三拍运行时的步距角是30°
,但双三拍运行时每一拍总有一相绕组持续通电,例如由A、B两相通电变为B、C两相通电时,B相保持持续通电状态,C相磁拉力使转子逆时针方向转动,而B相磁拉力却起有阻止转子继续向前转动的作用.
3.3步进电机与微型机接口电路
因为步进电机工作时的驱动电流比单片机端口所能提供的要大得多.单片机要控制电机的运动就不能直接将端口与电机各相相连,必须使用一定的接口电路和驱动电路。
接口电路一般为锁存器,也有使用可编程接口芯片,如8255.驱动器多选用大功率复合管.当然,考虑到实际使用中的干扰和电压安全,一般都要在单片机与驱动器之间使用必要的光电隔离器.
图3.1
在图3.1中,若P1.2口输出为0时,发光二极管不会发光.此时光敏管处于截止状态,而达林顿管导通.所以C相通电:
反之,P1.2输出为1时,由电路分析可知C相不通电。
如按前面所示的表取控制数,按顺序执行,就可以使步进电机安一定的方向步进.
第四章系统软件程序设计
步进电机控制程序就是完成环形分配器的任务,从而控制步进电机转动,以达到控制转动角度和位移之目的。
首先要进行旋转方向的判断,然后转到相应的控制程序.正反向控制程序分别按要求的控制顺序输出相应的控制模型,再加上脉宽延时程序即可.脉冲序列的个数可以用寄存器CL进行计数。
控制模型可以以立即数的形式一一给出。
控制标志单元FLAG为00H时,表示正转;
为01H时,表示反转。
其程序流程图如下图所示:
图4。
1程序流程图
程序编写:
D0EQU0
D2EQU2
ORG0000H
START:
LJMPMAIN
ORG0003H
LJMPINT0
ORG0100H
MAIN:
MOVP2,#00H;
等待信号
MOVP0,#FFH
MOVR2,#0
MOVR3,#0
MOVR4,#0
CLRIT0
SETBEA
SETBEX0
INT0:
JNBP2。
0,ZHENG;
正转
JNBP2.1,FAN;
反转
2,JIA;
加
3,JIAN;
减速速
4,TIN;
停
RETI
ZHENG:
MOVR2,#1;
MOVDPTR,CHA
MOVA,D0
MOVCA,@A+DPTR
MOVP0,A
ACALLYAN0
CPLP0.0
CPLP0.2
CPLP0。
CPLP0.1
LJMPZHENG
FAN:
MOVR2,#0;
MOVA,D2
MOVCA,@A+DPTR
MOVP0,A
LJMPFAN
ZHENG1:
MOVDPTR,CHA;
加减速正转
CJNER3,#0,YIA1
CJNER4,#0,YIA2
CJNER3,#0,YIA1
CJNER4,#0,YIA2
CJNER3,#0,YIA1
FAN1:
MOVDPTR,CHA;
加减速反转
CJNER3,#0,YIA1
CJNER4,#0,YIA2
CJNER3,#0,YIA1
CJNER4,#0,YIA2
LJMPFAN1
JIA:
MOVR3,#1;
加速
MOVR4,#0
CJNER2,#0,ZHENG1
LCALLFAN
JIAN:
MOVR4,#1;
减速
MOVR3,#0
CJNER2,#0,ZHENG
LCALLFAN
TIN:
LCALLMAIN;
停
YAN0:
MOVR0,#25
LOOP00:
MOVR1,#100
LOOP01:
DJNZR1,LOOP01
DJNZR0,LOOP00
RET
YAN1:
MOVR0,#20
LOOP10:
MOVR1,#100
LOOP11:
DJNZR1,LOOP11
DJNZR0,LOOP10
YAN2:
MOVR0,#30
LOOP20:
LOOP21:
DJNZR1,LOOP21
DJNZR0,LOOP20
CHA:
DB03H,06H,05H
END
第五章心得体会
通过这次的计算机控制技术的课程设计,我对步进电动机有了深入的了解,平时我们接触的电动机主要是直流电动机和交流电动机,很少见到步进电动机,所以对于步进电动机比较陌生。
通过老师指导,然后自己在课后翻阅书籍和上网,搜集到了不少有关步进电动机的知识.通过钻研这些知识,我总算对步进电机有了认识,但是这离课程设计需要掌握的知识相差甚远,为了缩短这种差距,我只能不断的向老师和同学请教,然后仔细的揣摩。
在这次课程设计中,通过用单片机控制步进电机的正、反转,加、减速,我也对单片机的知识也进行了复习和巩固.那时候觉得学习单片机是那么的枯燥乏味,整天只是学习这个指令做什么,那个指令做什么,觉得学了一点用都没有.但是今天我才发现,学习单片机是那么的有用处,它可以控制步进电机的旋转、加减速、停止,也可以控制十字路口的交通灯,还可以控制机械手工作。
俗话说的好,实践是检验真理的唯一标准,学习再多的理论也只能纸上谈兵,只有把理论应用到实践中,才能检验出理论的真伪.从这次的课程设计,我也发现自己在好多地方的不足,在以后的学习和工作中,我会努力去弥补这些不足,争取让自己不要被社会淘汰。
第六章参考文献
[1]温希东,路勇。
计算机控制技术.西安电子科技大学出版社,200569~80
[2]曹天汉。
单片机原理与接口技术。
电子工业出版社,200696~111
[3]曹承志。
电机拖动与控制.机械工业出版社,2000267~277
摘要:
步进电动机是一种将脉冲信号变换成相应的角位移(或线位移)的电磁装置,是一种特殊的电动机。
由于其精确性以及其良好的性能在实际当中得到了广泛的应用.本文介绍了以51系列单片机AT89S52为控制核心所设计的步进电机(型号42BYG016)控制系统,从系统的硬件电路以及软件的设计方面实现了对步进电机的控制。
并且由传感器EE—EX672采集转速数据进而进行关于速度的闭环控制,经过实际应用电路证明,该仿真控制系统的随动性能好,抗干扰能力强,稳定性好。
关键词:
单片机、步进电机、光电开关、PID算法、闭环控制
一、步进电机
1步进电机的工作原理
步进电机是将电脉冲信号转变为角位移或线位移的执行机构。
在非超载的情况下,电机的转速、停止的位置只取决于脉冲信号的频率和脉冲数,而不受负载变化的影响,即给电机加一个脉冲信号,电机则转过一个步距角。
这一线性关系的存在,加上步进电机只有周期性的误差而无累积误差等特点,使得在速度、位置等控制领域用步进电机来控制变的非常的简单。
2步进电机的特点
本实验所用的步进电机为感应子式步进电机(型号为42BYG016).感应子式步进电机与传统的反应式步进电机相比,结构上转子加有永磁体,以提供软磁材料的工作点,而定子激磁只需提供变化的磁场而不必提供磁材料工作点的耗能,因此该电机效率高,电流小,发热低。
因永磁体的存在,该电机具有较强的反电势,其自身阻尼作用比较好,使其在运转过程中比较平稳、噪音低、低频振动小。
感应子式步进电机某种程度上可以看作是低速同步电机。
一个四相电机可以作四相运行,也可以作二相运行。
(必须采用双极电压驱动),而反应式电机则不能如此.例如:
四相八拍运行(A—AB-B—BC-C—CD-D—DA-A)完全可以采用二相八拍运行方式。
不难发现其条件为C=
D=
。
一个二相电机的内部绕组与四相电机完全一致,小功率电机一般直接接为二相,而功率大一点的电机,为了方便使用,灵活改变电机的动态特点,往往将其外部接线为八根引线(四相),这样使用时,既可以作四相电机使用,可以作二相电机绕组串联或并联使用。
(本实验采用两相四拍)
1.3步进电机的静态指标
相数:
产生不同对极N、S磁场的激磁线圈对数。
常用m表示.
拍数:
完成一个磁场周期性变化所需脉冲数或导电状态用n表示,或指电机转过一个齿距角所需脉冲数,以四相电机为例,有四相四拍运行方式即AB—BC-CD—DA—AB,四相八拍运行方式即A—AB—B—BC—C-CD-D—DA-A.
步距角:
对应一个脉冲信号,电机转子转过的角位移用θ表示。
θ=360度(转子齿数J*运行拍数),以常规二、四相,转子齿为50齿电机为例.四拍运行时步距角为θ=360度/(50*4)=1。
8度(俗称整步),八拍运行时步距角为θ=360度/(50*8)=0。
9度(俗称半步)。
1.4步进电机的动态指标
1)步距角精度:
步进电机每转过一个步距角的实际值与理论值的误差。
用百分比表示:
误差步距角*100%。
不同运行拍数其值不同,四拍运行时应在5%之内,八拍运行时应在15%以内。
2)失步:
电机运转时运转的步数,不等于理论上的步数.称之为失步。
3)失调角:
转子齿轴线偏移定子齿轴线的角度,电机运转必存在失调角,由失调角产生的误差,采用细分驱动是不能解决的。
4)最大空载起动频率:
电机在某种驱动形式、电压及额定电流下,在不加负载的情况下,能够直接起动的最大频率。
5)最大空载的运行频率:
电机在某种驱动形式,电压及额定电流下,电机不带负载的最高转速频率.
6)运行矩频特性:
电机在某种测试条件下测得运行中输出力矩与频率关系的曲线称为运行矩频特性,这是电机诸多动态曲线中最重要的,也是电机选择的根本依据。
5步进电机的驱动控制系统
控制系统的组成方框图如下:
1)脉冲信号的产生
脉冲信号由单片机AT89S52的I/O口产生,一般的脉冲信号的占空比为0.3-0。
4左右,电机转速越高,占空比则越大。
本实验采用的占空比为0.5。
2)信号分配
感应子式不仅以二、四相电机为主,二相电机工作方式有二相四拍和二相八拍两种,具体分配如下:
二相四拍为
步距角为1。
8度;
二相八拍为
,步距角为0.9度.本设计采用步距角为1。
8度.
3)功率放大
功率放大是驱动系统最为重要的部分。
步进电机在一定转速下的转矩取决于它的动态平均电流而非静态电流(而样本上的电流均为静态电流)。
平均电流越大电机力矩越大,要达到平均电流大这就需要驱动系统尽量克服电机的反电势.因而不同的场合采取不同的的驱动方式,到目前为止,驱动方式一般有以下几种:
恒压、恒压串电阻、高低压驱动、恒流、细分数等。
步进电机一经定型,其性能取决于电机的驱动电源。
步进电机转速越高,力距越大则要求电机的电流越大,驱动电源的电压越高。
电压对力矩影响如下:
4)功率放大细分驱动器
在步进电机步距角不能满足使用的条件下,可采用细分驱动器来驱动步进电机,细分驱动器的原理是通过改变相邻(A,B)电流的大小,以改变合成磁场的夹角来控制步进电机运转的。
二、驱动器
由于单片机的I/O不具有直接驱动步进电机的能力,故在本系统中需要步进电机驱动器,我们选择驱动器为KD—221,该驱动器具有输入电压范围广,控制信号输入方式多样等特点。
其具体接法如下:
1、电源接线:
①、E高:
当驱动电压大于10V时,正极接此座,使用时最大不能大于40V,以防损坏模块.
②、E低:
当驱动电压小于10V时,正极接此座。
③、地:
驱动电压E高、E低的的负极接此座。
④、A,:
接电机A相线圈的二根引线。
⑤、B,:
接电机B相线圈的二根引线.
2、控制信号接线:
①、CP:
接控制器发给步进电机的走步脉冲信号线。
②、CW:
接控制器发给步进电机的走步方向信号线.
③、VP:
接CP和CW信号的负极,即逻辑电路电源的负极。
④、本驱动器内部