计算机控制技术计算机控制技术及工程应用步进电机控制系统_第1页
计算机控制技术计算机控制技术及工程应用步进电机控制系统_第2页
计算机控制技术计算机控制技术及工程应用步进电机控制系统_第3页
计算机控制技术计算机控制技术及工程应用步进电机控制系统_第4页
计算机控制技术计算机控制技术及工程应用步进电机控制系统_第5页
已阅读5页,还剩23页未读 继续免费阅读

下载本文档

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

文档简介

1、计算机控制技术及工程应用步进电机控制系统摘要过向步进电机发送控制信号就能实现对步进电机的控制。采用 80C51 单片机作为主控芯片,来完成对步进电机转动及 LED 显示的控制。本设计主要由单片机 80C51,4 相步进电机,7 段数码管及一些其他相LED 二极管显示工作状态模块以及 4 /停工作,当系统运转时,用开关来控制方向,并使相应的指示灯亮起,同样由 4 位 7 设计出来的硬件图设计相适应的软件。电路结构简单,设计思路清晰,同时利用 KEIL 和 Proteus 进行联调仿真,结果比较直观。仿真结果收到了预期的效果。关键字:四相步进电机、单片机、PROTEUS 仿真1计算机控制技术及工程

2、应用步进电机控制系统1设计任务及要求设计一个四相步进电机控制系统,要求系统具有如下功能:用 SW11-SW13作为通电方式选择键,SW11为四相单四拍, SW12为四相双四拍,SW13为四相八拍;SW14为启动/停止控制、SW1方向控制;用 4位 LED数码管显示工作步数。用 3个发光二极管显示状态;正转时红灯亮,反转时黄灯亮,不转时绿灯亮。2方案论证2.1 设计思路与方案本次设计是一个对于四相步进电机的控制系统,而单片机实现的步进电机控制系统具有成本低、使用灵活的特点,此系统选用 51单片机即可。根据要求整个设计大体可分为四块:一是 5个按键 SW11-SW13将用户所需来选择步进电机的工作

3、状态。我们将开关连入单片机的 P1口,通过按键开关的高低电平状态来读入我们所需的控制信控制信号处理。二是 3个 LED发光二极管的显示步进电机工作状态模块。在设计要求中步 3个发光二极管分别接到单片机 P3口受到单片机的输出信号控制。三是步进电机的工作模块。要想步进电机按照我们想要的方式运转,将步进电机一端接到+12VP3四是 4位数码管显示步数的模块。设计中主要是利用软件编程的算法来实现步数的累计和显示,同样,4位数码管接到单片机的 P0口和 P2口受单片机输出信号的控制,在硬件上使用的是动态显示的接法。由此可知所需要设计一个系统,可以通过不同按键来选择步进电机的工 LED管上显示出步进电机

4、转动的步数。2.2总体设计框图此系统主要由单片机、步进电机、步数显示模块、工作状态控制与显示模块组成。整体框图如图 1:2计算机控制技术及工程应用步进电机控制系统LED块LED图 1 系统整体框图3 系统实现的原理说明3.1 步进电机控制工作原理3.1.1 步进电机的工作原理能实现对步进电机的控制。如图 2 所示,开始时,开关 SB 接通电源,SA、SC、SD 断开,B 相磁极和转子 03 14 号齿就和 CD 相绕组磁极产生错齿,2、5 号齿就和 D、A 相绕组磁极产生错齿。当开关 SC 接通电源,SB、SA、SD 断开时,由于 C 相绕组的磁力线和 1、4 14 号齿和 C 0、3 号齿和

5、 AB 25 号齿就和 AD 相绕组磁极产生错齿。依次A、B、C、DA、B、C、D 方向转动。3计算机控制技术及工程应用步进电机控制系统动力矩又可以提高控制精度。图 2 步进电机工作原理图3.1.2 步进电机的启停控制步进电机由于其电气特性,运转时会有步进感 ,即振动感。为了使电机转动平滑 ,减小振动 ,可在步进电机控制脉冲的上升沿和下降沿采用细分的梯形波 ,可以减小步进电机的步进角 , ,为了 ,锁定步进电机的转轴,使步进电机的转轴不能自由转动。3.1.3 步进电机的转向控制 A-AB-B-BC-C-CD-D-DA-A ,即则电机就反转。其他方式情况类似。3.2步数显示模块原理管 LED L

6、ED 4位十进制数故用到 4一个 84计算机控制技术及工程应用步进电机控制系统展。这里选用动态显示方式。4 硬件设计4.1系统总原理图RP2C11U1X1C29SW1M1SW11四相八拍SW13/D3D187654321RP1D2图 3 系统总原理图根据设计要求用 PROTEUS 所做的硬件连线图如图 3。4.2各部分硬件原理图设计4.2.1 单片机控制模块单片机选用最经典的 80C51 4 个 I/O 口都要用到,P3 接步进电机驱动电5计算机控制技术及工程应用步进电机控制系统路及工作状态显示模块,P0 和 P2 分别接步数显示中对数码管的字段控制及数码管片选,P1 接工作状态控制电路,时钟

7、用内部方式需外接晶体振荡器。硬件图如图 4 所示。图 4 单片机模块原理图此设计中接的是 12MHZ 1/12us与晶振一起的两个电容设为 15PF。单片机的 VCC 和 GROUD接好,VCC 应设为+5V。4.2.2 按键选择工作状态模块5 个按键开关一端通过电阻接高电平,另一端全部接到地,其中接高电平的一端对应也接到单片机的 P1 口分别为 P1.0P1.4。当开关断开,就是输入到单片机对应端口高电平,而开关闭合,是使端口接地,输入低电平。所以这个设计中开关断开时才是有效的。各按键功能:6计算机控制技术及工程应用步进电机控制系统(1SW11SW13 为工作模式控制开关,SW11 工作模式

8、;SW12 接电时,为步进电机双四拍工作模式;SW13 接电时,步进电机工作模式为四相八拍。(2)SW14 为启/停控制开关,控制整个系统的开启和关闭。(3)SW1 为正/反转控制开关,控制步进电机的转向。4.2.3 步进电机工作模块将四相步进电机四个端口直接接到单片机 P3.0P3.3 即可,另两个端口接到+12V 的高电平给步进电机供电。只需在软件编写上控制算法便可以调节这四个硬件接线图如图 6 所示。7计算机控制技术及工程应用步进电机控制系统图 6 步进电机模块原理图4.2.4 工作状态显示模块LED P3.5P3.7。图 7 工作状态显示模块原理图8计算机控制技术及工程应用步进电机控制

9、系统4.2.5 4位数码管显示步数模块LED数码管实际上是由七个发光管组成 8字形构成的,加上小数点就是 8个。这些段分别由字母 a,b,c,d,e,f,g,dp来表示。当数码管特定的段加上电压后,各个 LED数码管的 COM端,就使各个数码管轮流受控显示,这就是动态驱动。P0口和P2口的前四个分别接步数显示中对数码管的字段控制及数码管片选,如图 8所示,这里主要是由软件算法来实现单片机输出的控制。图 8 数码管显示模块原理图9计算机控制技术及工程应用步进电机控制系统5 软件设计5.1系统总体设计开始数码管显示清零启动?绿灯亮选择工作模式正转?增量红灯亮黄灯亮步数自增一调用步数显示程序变?图

10、9 系统总流程图10计算机控制技术及工程应用步进电机控制系统 P1 需的电机工作模式,再读入 P1 口状态判断电机的转向,输出控制信号为正转红显示到数码管上。最后检验 P1 口,是否状态改变,如果改变则步数清零重新开始判断,不改变则继续转动。5.2步进电机工作模块5.2.1 步进电机的工作方式说明(1)四相单四拍工作方式ABCD 三相轮流通电,电流切换三次,磁场旋转一周,转子向前转过一个齿距角。因此这种通电方式叫做三相单三拍工作方式。这时步距角 (度)为:=360/mz式中:m 为定子相数;z 为转子齿数表 1 单四拍的相位控制工作 控制步序 P1.7 P1.6 P1.5 P1.4 P1.3

11、P1.2 P1.1 P1.0状态 模型D相 C 相 B相 A相123400000000000000000001001001001000ABCD01H02H04H08H(2) 四相双四拍工作方式这种工作方式每次都是有两相导通,两相绕组处在相同电压之下,以ABBCCDDAAB(或反之)方式通电,故称为双四拍工作方式。以这种方式通电,转算公式与单四拍时的公式相同。11计算机控制技术及工程应用步进电机控制系统表 2 双四拍的相位控制工作 控制状态 模型100000000000000000011011011001001ABBC03H06H234CD 0CHDA 09H(3) AABBBCCCDDDAA

12、时序(或反时序)转换 8 次,磁场旋转一周,转子前进一个齿距每次切换均使转子转动0.9,故这种通电方式称为四相八柏工作方式。其步距角 (度)为:=360/2mz=180/mz表 3 八拍的数学模型工作 控制步序 P1.7 P1.6 P1.5 P1.4 P1.3 P1.2 P1.1 P1.0状态 模型D相 C 相 B相 A相00000001A01H1234567800000000000000000000000000000000111001110011100001000001ABB03H02H06H04H0CH08H09HBCCCDDDA5.2.2 设计说明及流程图设计说明:在此设计中,采用的是四

13、相步进电机,对于步进电机模块的程序设12计算机控制技术及工程应用步进电机控制系统 P1 口读入所需的工作方式,动步进电机转动。5.3数码管步数显示模块 4 位八段数码 10 P0 口输出显示码,P2 口输入位选码,需要一定的延时,让此位数字显示闪烁出来。然复 50 次,保证人眼能观察到步数显示。 流程图如图 11:13计算机控制技术及工程应用步进电机控制系统据将该数据化为制数,每位分别储存 P2.0-完?完?图 11 数码管显示模块流程图6 仿真调试记录如图 12 SW11SW1 接高电平,SW12、SW13 接低电平,系统启动,SW14 接高电平,电机开始转动。LED 四位显示屏显示工作步数

14、,LED 指示灯红灯亮显示电机正转的状态。14计算机控制技术及工程应用步进电机控制系统7 心得体会分感受到了这一点。在老师给的课题之中,是来自于各个方面各个领域的应用,不得不说,计算机控制很强大,确实改变了我们的生活。本次课设收获就是关于软件的使用了。PROTEUS,KEIL51的功能,而且发现从 PROTEUS 里导出来的电路图特别漂亮和清晰。也想着可以好好检验自己的学习成果,一直认为,期末考试是所谓的应试教育,东西,书本上的东西,这是一种奇妙的体验。意义吧,很有收获。15计算机控制技术及工程应用步进电机控制系统附录一 程序清单#include reg52.h/Motorsbit F1 =

15、P30;sbit F2 = P31;sbit F3 = P32;sbit F4 = P33;/sbit TIM=P34;#define m 500/步进电机驱动unsigned char MotorStep=0;unsigned int MotorTimer = 0;unsigned int TIM,CT,STEP=0,TIM1,num;void InitMotor()F1 = 1;F2 = 1;F3 = 1;F4 = 1;void SetMotor()/ if(Speed = 0) return;if(P1&0 x01)/单四if(P1&0 x10)/ 正switch(MotorStep)c

16、ase 0:if(TIM)P3=0 xb1;/F1 = 0; F2 = 0; F3 = 0;F4 = 1;16计算机控制技术及工程应用步进电机控制系统MotorStep = 1;TIM=0;break;case 1:if(TIM)P3=0 xb2;/F1 = 1; F2 = 0;F3 = 0; F4 = 0;MotorStep = 2;TIM=0;break;case 2:if(TIM)P3=0 xb4;/F1 = 0; F2 = 1; F3 = 0; F4 = 0;MotorStep = 3;TIM=0;break;case 3:if(TIM)P3=0 xb8;/F1 = 0; F2 = 0

17、; F3 = 1; F4 = 0;MotorStep = 0;TIM=0;break;else /单四反switch(MotorStep)case 0:if(TIM)17计算机控制技术及工程应用步进电机控制系统P3=0 x71;/F1 = 0; F2 = 0; F3 = 0;F4 = 1;MotorStep = 1;TIM=0;break;case 1:if(TIM)P3=0 x78;/F1 = 0; F2 = 0;F3 = 1; F4 = 0;MotorStep = 2;TIM=0;break;case 2:if(TIM)P3=0 x74;/F1 = 0; F2 = 1; F3 = 0; F

18、4 = 0;MotorStep = 3;TIM=0;break;case 3:if(TIM) STEP+;P3=0 x72;/F1 = 1; F2 = 0; F3 = 0; F4 = 0;MotorStep = 0;TIM=0;break; else if(P1&0 x02) /双四正转if(P1&0 x10)/则正转18计算机控制技术及工程应用步进电机控制系统switch(MotorStep)case 0:if(TIM)P3=0 xb3;/F1 = 0; F2 = 0; F3 = 1;F4 = 1;MotorStep = 1;TIM=0;break;case 1:if(TIM)P3=0 xb

19、6;/F1 = 0; F2 = 1;F3 = 1; F4 = 0;MotorStep = 2;TIM=0;break;case 2:if(TIM)P3=0 xbc;/F1 = 1; F2 = 1; F3 = 0; F4 = 0;MotorStep = 3;TIM=0;break;case 3:if(TIM)P3=0 xb9; /F1 = 1; F2 = 0; F3 = 0; F4 = 1;MotorStep = 0;TIM=0;19计算机控制技术及工程应用步进电机控制系统break;else /双四反switch(MotorStep)case 0:if(TIM)P3=0 x73;/F1 = 0

20、; F2 = 0;F3 = 1;F4 = 1;MotorStep = 1;TIM=0;break;case 1:if(TIM)P3=0 x79;/ F1 = 1; F2 = 0; F3 = 0;F4 = 1;MotorStep = 2;TIM=0;break;case 2:if(TIM)P3=0 x7c;/F1 = 1; F2 = 1;F3 = 0;F4 = 0;MotorStep = 3;TIM=0;break;case 3:if(TIM)P3=0 x76;/F1 = 0; F2 = 1; F3 = 1; F4 = 0;20计算机控制技术及工程应用步进电机控制系统MotorStep = 0;

21、TIM=0;break;else if(P1&0 x04)/八拍 if(P1&0 x10)/则正转switch(MotorStep)case 0:if(TIM)P3=0 xb1;/F1 = 0; F2 = 0; F3 = 0;F4 = 1;MotorStep = 1;TIM=0;break;case 1:if(TIM)P3=0 xb3;/F1 = 1; F2 = 0;F3 = 0; F4 = 1;MotorStep = 2;TIM=0;break;case 2:if(TIM)P3=0 xb2;/F1 = 1; F2 = 0; F3 = 0; F4 = 0;MotorStep = 3;TIM=0

22、;break;case 3:21计算机控制技术及工程应用步进电机控制系统if(TIM)P3=0 xb6;/F1 = 1; F2 = 1; F3 = 0; F4 = 0;MotorStep = 4;TIM=0;break;case 4:if(TIM)P3=0 xb4;/ F1 = 0; F2 = 1; F3 = 0; F4 = 0;MotorStep = 5;TIM=0;break;case 5:if(TIM)P3=0 xbc;/F1 = 0; F2 = 1; F3 = 1; F4 = 0;MotorStep = 6;TIM=0;break;case 6:if(TIM)P3=0 xb8;/F1

23、= 0; F2 = 0; F3 = 1; F4 = 0;MotorStep = 7;TIM=0;break;case 7:if(TIM)22计算机控制技术及工程应用步进电机控制系统P3=0 xb9;/F1 = 0; F2 = 0; F3 = 1; F4 = 1;MotorStep = 0;TIM=0;break;else /八拍反switch(MotorStep)case 0:if(TIM)P3=0 x71;/ F1 = 0; F2 = 0; F3 = 0;F4 = 1;MotorStep = 1;TIM=0;break;case 1:if(TIM)P3=0 x79;/ F1 = 0; F2

24、= 0;F3 = 1; F4 = 1;MotorStep = 2;TIM=0;break;case 2:if(TIM)P3=0 x78;/P3=0 x78;F1 = 0; F2 = 0; F3 = 1; F4 = 0;MotorStep = 3;TIM=0;break;case 3:23计算机控制技术及工程应用步进电机控制系统if(TIM)P3=0 x7c;/F1 = 0; F2 = 1; F3 = 1; F4 = 0;MotorStep = 4;TIM=0;break;case 4:if(TIM)P3=0 x74;/ F1 = 0; F2 = 1; F3 = 0; F4 = 0;MotorS

25、tep = 5;TIM=0;break;case 5:if(TIM)P3=0 x76;/ F1 = 1; F2 = 1; F3 = 0; F4 = 0;MotorStep = 6;TIM=0;break;case 6:if(TIM)P3=0 x72;/F1 = 1; F2 = 0; F3 = 0; F4 = 0;MotorStep = 7;TIM=0;break;case 7:if(TIM)24计算机控制技术及工程应用步进电机控制系统P3=0 x73;/F1 = 1; F2 = 0; F3 = 0; F4 = 1;MotorStep = 0;TIM=0;break;void delay2() int i,j;/延时 50us 子程序for(i=0;i1;i+)for(j=0;j10;j+);void system_Ini()TMOD|= 0 x11;/00010001TH0=0 xDC; /11.0592MTL0=0 x00;IE = 0 x8A;TR0

温馨提示

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

评论

0/150

提交评论