计算机控制系统课程设计-步进电机的计算机控制.doc_第1页
计算机控制系统课程设计-步进电机的计算机控制.doc_第2页
计算机控制系统课程设计-步进电机的计算机控制.doc_第3页
计算机控制系统课程设计-步进电机的计算机控制.doc_第4页
计算机控制系统课程设计-步进电机的计算机控制.doc_第5页
免费预览已结束,剩余11页可下载查看

下载本文档

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

文档简介

成绩 课程设计报告 题 目 步进电机的计算机控制 课 程 名 称 计算机控制系统设计 院 部 名 称 机电工程学院 专 业 自动化 班 级 08自动化(1) 学 生 姓 名 学 号 课程设计地点 c204 课程设计学时 1周 指 导 教 师 金陵科技学院教务处制步进电机的计算机控制摘 要 步进电机是将电脉冲信号转变为角位移或线位移的开环控制元步进电机件。在非超载的情况下,电机的转速、停止的位置只取决于脉冲信号的频率和脉冲数,而不受负载变化的影响,当步进驱动器接收到一个脉冲信号,它就驱动步进电机按设定的方向转动一个固定的角度,称为“步距角”,它的旋转是以固定的角度一步一步运行的。可以通过控制脉冲个数来控制角位移量,从而达到准确定位的目的;同时可以通过控制脉冲频率来控制电机转动的速度和加速度,从而达到调速的目的 本文应用单片机at89c52和脉冲分配器pmm8713,步进电机驱动器,光电隔离器4n25等,构建了步进电机控制器和驱动器为一体的步进电机控制系统。通过at89c52和脉冲分配器pmm8713完成步进电机的各种运行控制方式,实现步进电机在3相6拍的工作方式下的正反转控制和加减速控制。整个系统采用模块化设计,通过人机交互换接口可实现各功能设置,操作方便,结构简单。该系统可应用于步进电机在机电一体化控制等大多数场合。关键词:步进电机;单片机控制; at89c52;步距角第1章 单片机步进电机控制系统的硬件设计1.1 步进电机的选择在生产或使用中步进电机主要由步距角(涉及到相数)、静转矩、及电流三大要素组成。所以选择好步进电机,主要选择步进电机的三大要素;一旦三大要素确定,步进电机的型号便确定下来了。 1、步距角的选择 电机的步距角取决于负载精度的要求,将负载的最小分辨率(当量)换算到电机轴上,每个当量电机应走多少角度(包括减速)。电机的步距角应等于或小于此角度。目前市场上步进电机的步距角一般有0.36度/0.72度(五相电机)、0.9度/1.8度(二、四相电机)、1.5度/3度 (三相电机)等。 2、静力矩的选择 步进电机的动态力矩一下子很难确定,我们往往先确定电机的静力矩。静力矩选择的依据是电机工作的负载,而负载可分为惯性负载和摩擦负载二种。单一的惯性负载和单一的摩擦负载是不存在的。直接起动时(一般由低速)时二种负载均要考虑,加速起动时主要考虑惯性负载,恒速运行进只要考虑摩擦负载。一般情况下,静力矩应为摩擦负载的2-3倍内好,静力矩一旦选定,电机的机座及长度便能确定下来(几何尺寸) 3、电流的选择 静力矩一样的电机,由于电流参数不同,其运行特性差别很大,可依据矩频特性曲线图,判断电机的电流(参考驱动电源、及驱动电压)总的来说,选择步进电机应该按照以下步骤(图1)进行图1 步进电机选择步骤1.2 单片机的选择本设计的控制核心是单片机at89c52。其内部结构如图2所示:i/o存储器eprom/rom定时/计数器运算器控制器中断cpu片内振荡器ram/sfp并行口存储器扩展控制器串行口xtal图2 单片机的内部结构at89c52是一种低功耗、高性能coms 8位微控制器,具有8kb系统内可编程flash存储器。使用atmel公司高密度非易失性存储器技术制造,与工业80c51产品指令和引脚完全兼容。片上flash存储器允许程序存储器isp可编程,亦适于常规编程器。在单芯片上,拥有灵巧的8位cpu和可isp编程的flash存储器,使得at89c52为众多嵌入式应用系统提供高灵活、超有效的解决方案。at89c52具有以下标准功能:8kbflash存储器,256字节ram,32位i/o口线,看门狗定时器,2个数据指针,3个16位定时器/计数器,一个6向量2级终端结构,全双工串行口,片内晶振及时钟电路。另外,at89c52可降至0hz静态逻辑操作,支持两种软件可选择节点模式。空闲模式下,cpu停止工作,允许ram、定时器/计数器、串口、中断继续工作;掉电保护模式下,ram内容被保存,振荡器被冻结,单片机一切工作停止,直到下一个中断或硬件复位为止。8图3 单片机的引脚图管脚说明:vcc:供电电压。gnd: 接地。p0口:p0口为一个8位漏级开路双向i/o口,每脚可吸收8ttl门电流。当p1口的管脚第一次写1时,被定义为高阻输入。p0能够用于外部程序数据存储器,它可以被定义为数据/地址的第八位。在fiash编程时,p0 口作为原码输入口,当fiash进行校验时,p0输出原码,此时p0外部必须被拉高。p1口:p1口是一个内部提供上拉电阻的8位双向i/o口,p1口缓冲器能接收输出4ttl门电流。p1口管脚写入1后,被内部上拉为高,可用作输入,p1口被外部下拉为低电平时,将输出电流,这是由于内部上拉的缘故。在flash编程和校验时,p1口作为第八位地址接收。p2口:p2口为一个内部上拉电阻的8位双向i/o口,p2口缓冲器可接收,输出4个ttl门电流,当p2口被写“1”时,其管脚被内部上拉电阻拉高,且作为输入。并因此作为输入时,p2口的管脚被外部拉低,将输出电流。这是由于内部上拉的缘故。p2口当用于外部程序存储器或16位地址外部数据存储器进行存取时,p2口输出地址的高八位。在给出地址“1”时,它利用内部上拉优势,当对外部八位地址数据存储器进行读写时,p2口输出其特殊功能寄存器的内容。p2口在flash编程和校验时接收高八位地址信号和控制信号。p3口:p3口管脚是8个带内部上拉电阻的双向i/o口,可接收输出4个ttl门电流。当p3口写入“1”后,它们被内部上拉为高电平,并用作输入。作为输入,由于外部下拉为低电平,p3口将输出电流(ill)这是由于上拉的缘故。p3口也可作为at89c51的一些特殊功能口,如下表所示:p3.0 rxd(串行输入口)。p3.1 txd(串行输出口)。p3.2 /int0(外部中断0)。p3.3 /int1(外部中断1)。p3.4 t0(记时器0外部输入)。p3.5 t1(记时器1外部输入)。p3.6 /wr(外部数据存储器写选通)。p3.7 /rd(外部数据存储器读选通)。p3口同时为闪烁编程和编程校验接收一些控制信号。rst:复位输入。ale/prog:当访问外部存储器时,地址锁存允许的输出电平用于锁存地址的地位字节。在flash编程期间,此引脚用于输入编程脉冲。ale/prog:地址锁存允许信号端。当89c51上电正常工作后,ale引脚不断向外输出正脉冲信号,此频率位振荡器频率fosc的1/6.当cpu访问片外存储器时,ale输出信号作为锁存低8位地址的控制信号。平时不访问片外存储器时,ale端也以振荡频率的1/6固定输出正脉冲,因而ale信号可以用作对外输出时钟或定时信号。然而要注意的是:每当用作外部数据存储器时,将跳过一个ale脉冲。如想禁止ale的输出可在sfr8eh地址上置0。此时, ale只有在执行movx,movc指令是ale才起作用。另外,该引脚被略微拉高。如果微处理器在外部执行状态ale禁止,置位无效。ale端的负载驱动能力为8个ls型ttl(低功耗甚高速ttl)负载。此引脚的第二功能/prog在对片内带有4kbflash rom的89c51编程写入(固化程序)时,作为编程脉冲输入端。/psen:程序存储允许输出信号端。在由外部程序存储器取指期间,每个机器周期两次/psen有效。但在访问外部数据存储器时,这两次有效的/psen信号将不出现。/ea/vpp:外部程序存储器地址允许输入端/固化编程电压输入端。当/ea引脚接高电平时,cpu只访问片内flash rom并执行内部程序存储器中的指令;但当pc(程序计数器)的值超过0fffh(4kb)时,将自动转去执行片外程序存储器内的程序。当输入信号/ea引脚接低电平时,cpu只访问片外flash rom并执行内部程序存储器中的指令;而不管是否有内部程序存储器。需要注意的是,如果保密位lb1被编程,则复位时在内部会锁存/ea端的状态。当/ea端保持高电平时,cpu则执行内部程序存储器中的程序。在flash rom编程期间,此引脚也用于施加12v编程允许电源(vpp)。xtal1:接外部晶体和微调电容的一端。在片内,它是振荡电路反相放大器的输入端。在采用外部时钟时,则该引脚输入外部时钟脉冲。xtal2:接外部晶体和微调电容的另一端。它是振荡电路反相放大器的输出端,振荡电路额频率就是晶体的固有频率。若需采用外部时钟电路,则该引脚悬空。1.3 单片机步进电机的驱动选择步进电动机不能直接接到工频交流或直流电源上工作,而必须使用专用的步进电动机驱动器,如图4所示,它由脉冲发生控制单元、功率驱动单元、保护单元等组成。图中点划线所包围的二个单元可以用微机控制来实现。驱动单元与步进电动机直接耦合,也可理解成步进电动机微机控制器的功率接口,这里介绍下采用uln2003芯片作驱动电路的方法。 图4 步进电动机驱动控制器1.3.1 高电压大电流达林顿晶体管阵列uln2003芯片介绍 1、概述与特点 uln2003是高耐压、大电流达林顿阵列,其引脚如图5所示。图5 uln2003引脚图图6 uln2003内部结构图uln2003的每一对达林顿都串联一个2.7k的基极电阻,在5v的工作电压它能与ttl和coms电流直接相连,可以直接处理原先需要标准逻辑缓冲器来处理的数据。 uln2003工作电压高,工作电流大,灌电流可达500ma,并能够在关态时承受50v的电压,输出还可以在高负载电流并行运行。达林顿管还可以并联使用以达到更高的输出电流能力。uln2003的输出结构是集电极开路的,所以要在输出端接一个上拉电阻,在输出低电平的时候输出才是高电平。在驱动负载的时候,电流是由电源通过负载灌入uln2003的。2、 uln2003的应用电路uln2003的应用电路如图7所示。图7 uln2003的应用电路第二章 系统程序及分析2.1正反转程序流程图图8 正反转程序流程图2.2 程序设计. 对步进电机控制系统的设计要求进行设计,主程序程序如下:/*/* *#include /52芯片管脚定义头文件#include /内部包含延时函数 _nop_();#define uchar unsigned char#define uint unsigned intuchar code ffw8=0xf1,0xf3,0xf2,0xf6,0xf4,0xfc,0xf8,0xf9;uchar code rev8=0xf9,0xf8,0xfc,0xf4,0xf6,0xf2,0xf3,0xf1;sbit k1 = p14; /正转sbit k2 = p15; /反转sbit k3 = p16; /停止sbit k4 = p17; sbit beep = p37; /蜂鸣器 /*/* /* 延时t毫秒 /* 11.0592mhz时钟,延时约1ms /* /*/void delay(uint t) uint k; while(t-) for(k=0; k125; k+) /*/void delayb(uchar x) /x*0.14ms uchar i; while(x-) for (i=0; i13; i+) /*/void beep() uchar i; for (i=0;i100;i+) delayb(4); beep=!beep; /beep取反 beep=1; /关闭蜂鸣器 /*/*/*步进电机正转/*/*/void motor_ffw() uchar i; uint j; for (j=0; j12; j+) /转1*n圈 if(k4=0) break; /退出此循环程序 for (i=0; i8; i+) /一个周期转30度 p1 = ffwi; /取数据 delay(15); /调节转速 /*/*/*步进电机反转/*/*/void motor_rev() uchar i; uint j; for (j=0; j12; j+) /转1n圈 if(k4=0) break; /退出此循环程序 for (i=0; i8; i+) /一个周期转30度 p1 = revi; /取数据 delay(15); /调节转速 /* * 主程序 * */main() uchar r,n=5; /n 步进电机运转圈数 while(1) if(k1=0) beep();for(r=0;rn;r+) motor_ffw(); /电机正转 if(k4=0) beep();break; /退出此循环程序 else if(k2=0) beep();for(r=0;rn;r+) motor_rev(); /电机反转 if(k4=0) beep();break; /退出此循环程序 else p1 = 0xf0; /*/ 2.3 程序驱动 这款步进电机的驱动电压12v,步进角为 7.5度,一圈 360 度 ,需要 48 个脉冲完成。图9 步进电机 该步进电机有6根引线,排列次序如下:1:红色、2:红色、3:橙色、4:棕色、5:黄色、6:黑色,如图9。 电路总体电气原理图: 图10 系统原理图结 论本设计通过单片机at89c52和达林顿uln2003芯片来控制步进电机的正反转,加减速,以实现步进电机的控制。在这学习过程中,我们5人一组系统的学习了单片机与步进电机的相关知识。一开始,我们对它很陌生,可以说是知之甚少,可是我们不断翻阅图书馆的相关资料及网上查阅,经过自己的思考后,形成想法,之后我们经常在一起讨论,交换意见和看法,遇到大家都不懂的地方,我们会上网查资料或者去找周围的同学,如果仍旧一知半解,我们会去询问指导老师,就这样,经过一段时间的系统学习,我们对这个交通灯有了一定程度的认识,学到了很多东西,这也对我们的后续学习过程和实践环节提供了有力的帮助和支持。在这个课程设计中,我们要感谢的人有很多。首先,要感谢我们的指导老师姜玉东老师,他给我们提供了很大的帮助,解决了我们组课程设计过程中实际存在的一些问题。其次,我要感谢我们组的其他成员,是他们的团结互助,和谐相处,不断协助,才使我们的课程设计进程快速高效的完成。当然,也要感谢那些帮助过的我们的其他同学,没有他们,我们的课程设计也不能进行的如此顺利。本次

温馨提示

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

评论

0/150

提交评论