步进电机控制系统的设计(程序仿真+电路图+任务书+说明书)_第1页
步进电机控制系统的设计(程序仿真+电路图+任务书+说明书)_第2页
步进电机控制系统的设计(程序仿真+电路图+任务书+说明书)_第3页
步进电机控制系统的设计(程序仿真+电路图+任务书+说明书)_第4页
步进电机控制系统的设计(程序仿真+电路图+任务书+说明书)_第5页
已阅读5页,还剩19页未读 继续免费阅读

下载本文档

版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领

文档简介

1、步进电机作为执行元件,是机电一体化的关键产品之一,广泛应用在各种自动 化控制系统中。随着微电子和计算机技术的发展,步进电机的需求量与日俱增,在 各个国民经济领域都有应用。步进电机是将电脉冲信号转变为角位移或线位移的开环控制元件。在非超载的 情况下,电机的转速、停止的位置只取决于脉冲信号的频率和脉冲数,而不受负载 变化的影响,即给电机加一个脉冲信号,电机则转过一个步距角。这一线性关系的 存在,加上步进电机只有周期性的误差而无累积误差等特点。使得在速度、位置等 控制领域用步进电机来控制变的非常的简单。广泛应用于自动控制和精密机械等领 域,尤其在需耍精确定位时应用得更为广泛。本控制系统是采用单片机提

2、供电脉冲信号通过驱动电路放大信号后,驱动步进 电机转动。通过软硬件结合使得步进电机可实现匀速运转、加速运转、减速运转、 正反转切换等功能。本系统硬件主要由最小应用系统、键盘控制电路和功能电路组 成。其中单片机采用at89c51驱动,通过由uln2003芯片组成的放大电路,驱使四 相八拍步进电机35byj46型。关键词:at89c51单片机;步进电机;uln2003;目录摘要1绪论1第1章硬件系统设计21. 1最小应用系统设计21. 1.1 at89c51 单片机21.1.2时钟电路41.1.3复位电路51. 2功能电路设计51.2.1键盘控制电路51.2.2步进电机电路61. 23uln200

3、3 电路71. 3系统工作原理8第2章软件设计1021步进电机四相八拍工作方式102. 1. 1四相八拍工作方式102. 1. 2步进电机转向控制112. 2步进电机控制系统工作流程112. 3系统流程图13总结13参考文献14附录16附录1整机电路图16附录2源程序17随着经济建设和城市的迅速发展,步进电机控制系统在工业过程控制中得到了 广泛的应用,尤其在需要精确定位场合中应用得更为广泛。步进电机是一种将电脉冲转换成相应角位移或线位移的电磁机械装置,也是一 种把输出机械位移增量和输入数字脉冲对应的驱动器件。步进电机具有快速启停能 力,只要电机的负荷不超过它所能提供的动态转矩,就能通过输入脉冲

4、来控制它在 一瞬间启动和停止。步进电机控制系统是采用单片机提供电脉冲信号通过驱动电路放大信号后,驱 动步进电机转动。使电机能实现正向或反向运转,电机能加速运转、减速运转,并 能按给定速度匀速运转。系统设计包括硬件设计和软件设计。硬件设计主要包括最 小应用系统、i/o接口电路和功能电路的设计。软件设计包括流程图设计和程序设 计。程序主要包括步进电机正向、逆向控制程序,加速、减速控制程序,按给定速 度匀速运转程序,延时程序。在本控制系统中,单片机釆用at89c51芯片,步进电机为35byj46型。通过软硬 件结合使得步进电机可实现按给定速度匀速运转、加速运转、减速运转、正反转切 换等功能,可通过键

5、盘选择步进电机的转速、方向,同时还考虑了系统的抗干扰技 术。步进电机的步距角和转速只和输入的脉冲频率有关,与环境温度、气压、冲击 和振动无关,也不受电网电压的波动和负载变化的影响,它每转一周都有固定的步 数,步进精确和步距误差不会长期积累。步进电机可以对旋转角度和转动速度进行 高精度的控制,因此,作为控制执行部件,步进电机在需要精确定位场合应用广泛。第1章硬件系统设计仁1最小应用系统设计单片机的最小应用系统是指能够维持单片机运行的最简单的配置系统,如图1-1所示。最小应用系统主要由at89c51单片机、时钟电路和复位电路组成。>xtal1xta12poiyara p 口 .vad1pc

6、2im/2 poaraca pd.adipc 3x05 pdj&adg pd.t/ad?ale 0pzitas pz.v/e pzafj p2ja11 p2.4a1z p2s*ag pzj&au pz.7/a15p1jdp3iyrxdp1.1p12pannnp1jpauttp1.4p3.4hop1sp3st1p1j6p3j&ctrp1.7p3.7/kfr8twllsmzfgp 一 mmiz3fsff>一iidfrirrirn一图1-1 at89c51最小应用系统111 at89c51单片机at89c51单片机是片内无程序存储器的单片机。在其扩展片外程序存储器时,

7、由于p0 口是数据线、地址线分时复用的,故p0 口输出的低8位必须经地址锁存器 进行锁存,提供地址总线的低8位a0a7。由于p2 口一直提供高8位地址,故不 需要外加地址锁存器,直接提供地址总线的高8位a8a15。在本系统设计屮,由 于扩展的是epr0m2716芯片,故p2 口直接提供地址总线的高3位。ale用于锁存p0 口输出的低8位地址的控制线。psen用于片外程序存储器的读控制。at89c51是40引脚双列直插式封装的集成电路芯片,基引脚排列如图1-2所示。 4个并行口共有32根引脚,可以分别作地址线、数据线和i/o线;2根电源线;2桶时钟振荡电路引脚和4根控制线。o6s192、r io

8、6 r x r ii r i9r 1", r ir r ir i ci£)r59r-s6o< 4二9*cc6o图1-2at89c51单片机引脚排列at89c51单片机引脚功能列表:表1 -1 at89c51引脚功能引脚功能引脚功能18pl 口18xtal29rst/vpd19xtal110p3. 0/rxd20vss11p3. 1/txd21 28p2 口12p3. 2/tnt029pnse13p3. 3/inti30ale/prog14p3. 4/to31ale/prog15p3. 5/t132 39p0 口16p3. 6/wr40vcc17p3. 7/rd1. c

9、pucpu也叫中央处理器,是单片机的核心部件,主要完成单片机的运算和控制功能。 其内部由运算器利控制器组成。(1) 运算器:包括算术逻辑单元alu、布尔处理器、累加器acc、寄存器b、暂存 器tmp1和tmp2、程序状态字psw寄存字psw寄存器及十进制调整电路等。(2) 控制器:包括定时控制逻辑、指令寄存器、译码器以及信息传送控制部件等。 以实现控制功能。2. 内部存储器单片机内的存储器包括程序存储器和数据存储器,它们互相独立。(1)程序存储器(rom):为只读存储器,用于存放程序指令、常数及数据表格。(2)数据存储器(ram):为随机存储器,用于存放数据。数据存储器又可分为北部 数据存储器

10、和外部数据存储器。3. 定时器/计数器mcs-51单片机内部有2个16位的定时器/计数器,用于实现北部定时或外部计数的 功能,并一起定时或者计数的结果来实现控制功能。4. 中断系统控制mcs-51单片机具有中断功能,以满足控制应用的需要。mcs-51共有5个中断源,即 外部中断2个,定时器/计数器中断2个,串行口中断一个。全部中断可分为高级利 低级两个优先级别。5. 并行i/o 口mcs-51单片机内部共有四个8位的并行i/o 口,以实现数据的并行输入和输出。6. 全双工串行口mcs-51单片机还有一个全双工的串行口,以实现单片机与外部之间的串行数据传 送。1. 1. 2时钟电路单片机的时钟信

11、号用来提供单片机内各种微操作的时间基准,时钟电路用于产 生单片机工作所需要的时钟信号。mcs-51单片机的时钟信号通常用两种方式得到:内部振荡方式和外部振荡方 式。本系统设计采用内部振荡方式,如图1-3所示。mcs-51片内有个高增益的反相放大器,其输入端(xtal1)和输出端(xtal2)用 于外接石英晶体振荡器或陶瓷谐振器和微调电容,构成了稳定的自激振荡器,其发 出的脉冲直接送入内部的时钟电路。电容c1和c2对频率有微调作用,电容值一般 取30pf左右,振荡频率范围是1.212mhzo mcs-51在通常情况下,使用振荡频率 为6miiz的石英晶体,而12miiz频率的晶体主要在高速串行通

12、信情况下使用。振荡脉冲信号经过内部时钟发生器进行二分频之后,才可以成为单片机的时钟 信号。1. 1. 3复位电路复位是单片机的初始化操作,其目的是使cpu及各专用寄存器处于一个确定的 初始状态。如:把pc的内容初始化为0000h,使单片机从0000h单元开始执行,除 了进入系统的正常初始化之外,当单片机系统在运行出错或操作错误使系统处于死 锁状态时,为摆脱困境,也需要复位以使其恢复正常工作状态。rst端的外部复位电路有两种操作方式:上电自动复位和按键手动复位。按键手动 复位有电平方式和脉冲方式两种,本系统设计采用的是上电复位,如图1-4所示。30p苗严.rstpsen aleea"i

13、匕二1 1 q ok 图14复位电路1. 2功能电路设计1. 2. 1键盘控制电路键盘是计算机不可缺少的输入设备,是实现人与计算机对话的纽带,在单片机应用系统屮常用独立式键盘与行列式键盘(矩阵式键盘)。独立式键盘配置灵活,软件结构简单,适合于按键数冃较少的场合,故本系统设计中采用独立式键盘。独立式键盘是指各按键相互独立地接通一条输入数据线,当任何一个键按下时, 与之相连的输入数据线即被清0 (低电平),而平时该线为1 (高电平),键盘电路接 一个与门电路就组成了完整的键盘控制电路。如图1-5. 1-6所示。图1-5键盘电路图1-6与门电路1. 2. 2步进电机电路步进电机是一种将电脉冲转换成相

14、应角位移或线位移的电磁机械装置,也是一 种把输出机械位移增量和输入数字脉冲对应的驱动器件。步进电机具有快速启停能 力,只要电机的负荷不超过它所能提供的动态转矩,就能通过输入脉冲来控制它在 一瞬间启动和停止。步进电机的步距角和转速只和输入的脉冲频率有关,与环境温 度、气压、冲击和振动无关,也不受电网电压的波动和负载变化的影响,它每转一 周都有固定的步数,步进精确和步距误差不会长期积累。因此,步进电机在需要精 确定位场合应用广泛。本设计选用35byj46型四和八拍步进电机。通常电机的转子 为永磁体,当电流流过定子绕组时,定子绕组产生一个矢量磁场,该磁场会带动转 子旋转一定角度,使得转子的一对磁场方

15、向与定子磁场一致。当定子的矢量磁场旋 转一个角度,转子也随着该磁场转一个角度。每输入一个电脉冲,电动机转动一个 角度前进一步。它输出的角位移与输入的脉冲数成正比,转速与脉冲频率成止比。改变绕组通电的顺序,电动机就会反转。所以可用控制脉冲数量、频率及电机 各相绕组的通电顺序来控制步进电机的转动。电机四相绕组如图1-7所示。1. 2. 3 uln2003at89c51单片机通过uln2003芯片组成的放大电路来驱动四相八拍步进电机。uln2003是高耐压、大电流达林顿陈列,有七个硅npn达林顿管组成。uln2003 的每一对达林顿都串联一个2.7k的基极电阻,在5v的工作电压下它能与ttl和cmo

16、s 电路直接相连。可以直接处理原先需要标准逻辑缓冲器来处理的数据。如图1-8所/j ouln2003工作电压高、工作电流大,灌电流可达500ma,并且能够在关态时承 受50v的电压,输出还可以在高负载电流并行运行。uln2003采用dip-16或sop-16塑料封装。图 1-8 uln2003 芯片uln2003的特性如表1-2、表1-3所示。表 1-2uln2003 极限参数名称符号数值单位输入电压云30v输入电流iln25111a功耗pd1w工作坏境温度topr-20 to +85°c贮存温度tstg-55 to+150°c表1-3uln2003电特性表参数名称符号测试

17、条件最小典型最大单位输出漏电流ice:vce=50v 珈山=25950u avce=50v tamb=70*c100饱和压降vce(sat)ic= 100ma. is=250 p a0.91.1vic=200nia i$=35o m a1.11.3ic=350nia is=500 u a131.6愉入电流iln(on)vin=3.85v0.931.35111ailn(off)ic=500 u a tamb=70ac5065u a输入电压vln(on)vce=20v. ic=200ma2.4vvce=2.0v ic=250nia2.7vcz=2.0v ic=300nia3.0输入电容c1n152

18、5pf上升时间tplh0.5 eiii to 0.5 eout0.251.0u s下降时间tphl0.5 em to 0.5 eout0.251.0u s钳位二极管漏电流irvr=50v tamb=25*c50h avr=50v, tainb=70*c100u a钳位二极管正向压降vfif=350iiia1.72.0v1. 3系统工作原理步进电机控制系统原理图如附录1所示。由图可知,可通过键盘选择步进电机 的转速、转向。步进电机是数字控制电机,它将脉冲信号转变成角位移,即给一个 脉冲信号,步进电机就转动一个角度,因此非常适合于单片机控制。步进电机可分 为反应式步进电机(简称vr)、永磁式步进电

19、机(简称pm)和混合式步进电机(简 称hb)。步进电机区别于其他控制电机的最犬特点是,它是通过输入脉冲信号来进 行控制的,即电机的总转动角度曲输入脉冲数决定,而电机的转速出脉冲信号频率 决定。步进电机的驱动电路根据控制信号工作,控制信号由单片机产生。其基本原 理作用如下:(1) 控制换相顺序通电换相这一过程称为脉冲分配。例如:三相步进电机的三拍工作方式,其各 相通电顺序为a-b-c-d,通电控制脉冲必须严格按照这一顺序分别控制a, b, c, d相 的通断。(2) 控制步进电机的转向如果给定工作方式正序换相通电,步进电机正转,如果按反序通电换相,则电 机就反(3) 控制步进电机的速度如果给步进

20、电机发一个控制脉冲,它就转一步,再发一个脉冲,它会再转一步。 两个机脉冲的间隔越短,步进电就转得越快。调整单片机发岀的脉冲频率,就可以 对步进电机进行调速。第2章软件设计2. 1步进电机四相八拍工作方式2. 1. 1四相八拍工作方式四相八拍方式一单相绕组和双相绕组交替施加电流脉冲方式。以at89c51的p0 口接步进电机的绕组,输出控制电流脉冲。p0.3 p0.2 pop0.0v vd c b a“1”通入电脉冲,“0”无电脉冲。表21 po 口输出步序po. 3po. 2po. 1po. 0绕组角度caseo0001a225casel0011ab180case20010b135case301

21、10bc90case40100c45case51100cd0case61000d315case 71001da2702. 1. 2步进电机转向控制步进电机按四相八拍方式来工作,在a、b、c、i)四相绕组上依次输入脉冲的顺 序如下所示。步进电机正转:aab b bc c cd i) )a步进电机反转:a ab b bc c cd d da <由上图可见:只要控制脉冲输出的顺序改变就可以对步进电机正/反转的控制。2. 2步进电机控制系统工作流程以单片机为核心,设计步进电机控制系统,具有以下功能:开机时屯机不转动1. 按下正转键,步进电机匀速正向旋转,然后重新获取按键情况;2. 按下停止键,步

22、进电机停止转动,然后重新获取按键情况;3. 按下反转键,步进电机匀速反向旋转,然后重新获取按键情况;4. 按下加速键,步进电机以当前方向加速旋转,然后重新获取按键情况;5. 按下减速键,步进屯机在加速前提下减速到匀速旋转,然后重新获取按键情 况;2. 3系统流程图总结通过本次毕业设计一一步进电机控制系统的设计,使我从中学到许多知识。在做毕业设计的这段时间里,通过上网、在校图书馆查找资料,整理资料,努 力认真的完成了毕业设计。本次所设计的步电机控制系统是采用at89c51型单片机 驱动步进电机转动,主要由单片机最小应用进系统、扩展电路和功能电路组成。可 通过键盘控制步进电机的转速、方向,使电机能

23、实现正向或反向运转的切换,电机 能加速运转、减速运转。使我对步进电机及其工作原理有了更深刻的认识。步进电 机可以对旋转角度和转动速度进行高精度的控制。作为控制执行部件,广泛应用于 自动控制和精密机械等领域,尤其在需要精确定位时应用得更为广泛。在这期间通过我的努力和指导老师熊建云老师的耐心指导,以及在同学的帮助 下顺利的完成了本次毕业设计,使我学会了综合性的运用三年内所学知识分析解决 问题,懂得了如何设计一个系统,拓展了知识面,动手动笔能力得到充分锻炼,在以 后的工作、学习中将受益非浅。参考文献1 樊明龙.任丽静编.单片机原理与应用m.化学工业出版社,2005.2 徐爱卿编.单片微型计算机应用和

24、开发系统m北京航空航天大学出版社,1998.3 张伟编.单片机原理及应用m机械工业出版社.2003.4 胡汉才编.单片机原理及接口技术m.清华大学出版社.2005.20035 吴金戌编.8051单片机实践与应用m.清华大学出版社,附录1整机电路图c1 - c avrau119wte>vcftyt>u_18tile-j>xtal1pci ivaia pd.vad1 pc emfz pdaw pq.4/ah pci «vak poj&aw pd.7/awxtal2artale ekpziasp2.v>e p2a< p2ja11 pz.i/ac p2&

25、#163;ag p2*au p2.7/aspmpmerxdp3nrm puvnmp1 7p 1 23p1 4p3.4o0p3sht1 p3awr p3.7to7p1s pus p1.?乏,.atsc51 u4 ,<tex1jut.丟一女 fp 一兰=5>10f 一<5丿厂'f:2x2 $texj2:a :b6附录2源程序#include <at89x51h>#include <stdio.h>#include <math.h> #define uc unsigned char #define ui unsigned intuc se

26、an_key15scan_key2;uc stepl ,step2; static step_index;ui countl ,count2;按键功能选择,00停止,01正转10反转定时uc butter; static speed;按键速度参数/函数声明 /void ground(step); 转步 void run1 ();/正转void run2();反转void stop();停止void delay(ui time);/*void main(void)step2=0;step1=o;p1=oxff;p0=0;ex1=1;ea=1;开中断speed=2010;while(1)if(sc

27、an_key1=1) & (scan_key2=0)/ 正转 ground(step_index); delay(speed);stepndex+;大于7,从头再来if(step_index>7)step_i ndex=o;if(scan_key1 =0) & (scan_key 2=1)反转 ground(step_index); delay(speed); step_index;if(step_index<0) 小于 0,从头再來。step_index=7;if(scan_key1 =0&scan_key2=0)停止po=oxff;if(step1 =1

28、 & step2=0)加速speed=speed-100;if(speed<10001speed=1000) 小于话,说明电机的速度不能再提高了。speed=1000; /speed参数自己设定if(step1 =0&step2=1)减速speed=speed-i-100;/这里面的参数,论实际情况更改if(speed>25001speed=2500)如果 小于了,就说明到饿低速,可以用停止按键停止。 speed=2500;低速运行/*/ * 疋 口寸.不早 */* * 讥*void delay(ui time)/延时程序 for (countl =0;count1 <

温馨提示

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

评论

0/150

提交评论