基于单片机的步进电机控制系统的设计(毕业论文)_第1页
基于单片机的步进电机控制系统的设计(毕业论文)_第2页
基于单片机的步进电机控制系统的设计(毕业论文)_第3页
基于单片机的步进电机控制系统的设计(毕业论文)_第4页
基于单片机的步进电机控制系统的设计(毕业论文)_第5页
已阅读5页,还剩31页未读 继续免费阅读

下载本文档

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

文档简介

本科毕业设计基于单片机的步进电机控制系统的设计摘要随着自动控制系统的发展和对高精度控制的要求,步进电机在自动化控制中扮演着越来越重要的角色,区别于普通的直流电机和交流电机,步进电机可以对旋转角度和转动速度进行高精度控制。步进电机作为控制执行元件,是机电一体化的关键组成之一,广泛应用在各种自动化控制系统和精密机械等领域。步进电机是将电脉冲信号转变为角位移或线位移的开环控制元件。在非超载的情况下,电机的转速、停止的位置只取决于脉冲信号的频率和脉冲数,而不受负载变化的影响,即给电机加一个脉冲信号,电机则转过一个步距角。本系统介绍了一种基于单片机的步进电机控制系统的设计,包括了硬件设计和软件设计两部分。其中,硬件设计包括单片机最小系统、键盘控制模块、LCD显示模块、步进电机驱动模块、位置检测模块共5个功能模块的设计。系统软件设计采用C语言编写,包括主程序、数字键处理程序、功能键处理程序、电机驱动处理程序、显示模块、位置采集模块。本设计采用STC89C52单片机作为主控制器,44矩阵键盘作为输入,LCD1602液晶作为显示,ULN2003A芯片驱动步进电机。系统具有良好的操作界面,键盘输入步进电机的运行距离;步进电机能以不同的速度运行,可以在不超过最大转速内准确运行到任意设定的位置,可调性较强;显示设定的运行距离和实际运行距离;方便操作者使用。关键词单片机步进电机液晶显示键盘驱动DESIGNOFTHESTEPPINGMOTORCONTROLSYSTEMBASEDONSCMQIUHAIZHAOCOLLEGEOFENGINEERING,SOUTHCHINAAGRICULTURALUNIVERSITY,GUANGZHOU510642,CHINAABSTRACTWITHTHEDEVELOPMENTOFAUTOMATICCONTROLSYSTEMANDTHEREQUIREMENTSOFHIGHPRECISIONCONTROL,STEPPINGMOTORCONTROLINAUTOMATIONISPLAYINGANINCREASINGLYIMPORTANTROLE,DIFFERENTFROMTHECOMMONDCANDACMOTOR,STEPPERMOTORROTATIONANGLEANDROTATIONALSPEEDCANBEHIGHPRECISIONCONTROLLEDSTEPPERMOTORASACONTROLACTUATORISAKEYCOMPONENTOFMECHANICALANDELECTRICALINTEGRATION,WIDELYUSEDINAVARIETYOFAUTOMATEDCONTROLSYSTEMSANDPRECISIONMACHINERYANDOTHERFIELDSSTEPPERMOTORISTHEOPENLOOPCONTROLCOMPONENTSCHANGINGELECTRICPULSESIGNALSINTOANGULARDISPLACEMENTORLINEARDISPLACEMENTINTHECASEOFNONOVERLOADED,THEMOTORSPEED,STOPPOSITIONDEPENDSONLYONTHEPULSEFREQUENCYANDPULSENUMBER,REGARDLESSOFLOADCHANGES,THATIS,TOADDAPULSEMOTOR,THEMOTORISTURNEDASTEPANGLETHISSYSTEMINTRODUCESADESIGNOFSTEPPERMOTORCONTROLSYSTEMBASEDONSINGLECHIPMICROCOMPUTER,INCLUDINGHARDWAREDESIGNANDSOFTWAREDESIGNINTWOPARTSAMONGTHEM,THEHARDWAREDESIGN,INCLUDINGSINGLECHIPMINIMALSYSTEM,KEYBOARDCONTROLMODULE,LCDDISPLAYMODULE,THESTEPPERMOTORDRIVEMODULE,POSITIONDETECTIONMODULEFIVEFUNCTIONALMODULESSYSTEMSOFTWAREDESIGNUSINGCLANGUAGE,INCLUDINGTHEMAINPROGRAM,PROCESSNUMBERKEYS,THEKEYOFFUNCTIONPROCESSES,MOTORDRIVERHANDLER,THEDISPLAYMODULE,POSITIONACQUISITIONMODULETHISDESIGNUSESSTC89C52MICROCONTROLLERASTHEMAINCONTROLLER,44MATRIXKEYBOARDASANINPUT,LCD1602LCDASADISPLAY,ULN2003ACHIPASSTEPPERMOTORDRIVERSYSTEMHASAGOODUSERINTERFACE,KEYBOARDINPUTSTEPPERMOTORRUNNINGDISTANCESTEPPERMOTORCANRUNATDIFFERENTSPEED,ANDRUNTOANYGIVENPOSITIONACCURATELYINANYSPEEDWITHOUTEXCEEDINGTHEMAXIMUMSPEED,WITHASTRONGADJUSTABLEDISPLAYTHERUNNINGDISTANCEANDTHEACTUALRUNNINGDISTANCE,WHICHISMORECONVENIENTFORTHEOPERATORTOUSEKEYWORDSSCMSTEPPERLCDKEYBOARDDRIVER目录1前言111步进电机的发展112设计要求12系统方案分析与选择论证121步进电机的选择122步进电机驱动方案的选择223显示方案的选择323键盘方案的选择323步进电机位置检测方案的选择324整体方案43主要芯片介绍与硬件电路设计431单片机最小系统模块4311单片机介绍4312单片机最小系统532键盘电路设计633显示模块7331LCD1602介绍7332LCD1602电路图734驱动模块8341ULN2003A介绍8342驱动电路图935位置检测模块9351A3144E介绍9352位置检测电路图114程序设计1141主程序1142数字键处理程序1243功能键处理程序135结论14参考文献15附录16致谢27华南农业大学本科生毕业设计成绩评定表1前言11步进电机的发展步进电机最早是在1920年由英国人所开发。1950年后期晶体管的发明也逐渐应用在步进电机上,这对于数字化的控制变得更为容易(谢辉等,2010)。步进电机又称脉冲电动机,是数字控制系统中的一种执行元件,其功能是将脉冲电信号变换为相应的角位移或直线位移,且其输出转角、转速与输入脉冲个数、频率有着严格的同步关系。步进电机由于其本身的特点,在具体的应用中有利于装置或设备的小型化和低成本。因而,广泛地应用在众多的领域中并得以不断的发展。虽然步进电机是一种数控元件,易于同数字电路接口。但是,一般数字电路的信号能量远远不足以驱动步进电机,必须有一个与之匹配的驱动电路来驱动步进电机。步进电机本体和步进电机驱动电路两者密不可分地组成步进电机系统。多年来,随着电力电子技术、自动化控制技术以及计算机网络通信技术的发展,步进电机系统尤其是其中的驱动电路部分也不断地发展,国内外围绕步进电机驱动电路做了大量的研究与开发。本次设计采用的是四相步进电机,通过软硬件的结合来实现步进电机的启动、停止、正转、反转、精确定位、变速等功能,并且用LCD显示出步进电机运行参数和设定的参数。主要通过三大块来设计,包括驱动电路设计,显示部分,按键部分的设计。12设计要求本次设计任务要完成的功能是实现步进电机的开启与停止、正转、反转、精确定位、变速等功能,并且通过按键来输入运行参数,液晶显示一些参数。1按键设置步进电机运行距离;2液晶显示步进电机设置的运行距离和实际运行距离;3启动时步进电机速度由慢到快,停止时电机速度由快到慢;4当实际运行距离与设置的运行距离相等时,精确停止。2系统方案分析与选择论证21步进电机的选择在进行其他模块设计前,应先选择合适的电机。考虑到此次设计只是简单地控制步进电机的速度、正反转、位置定位等,而并没有涉及使用步进电机拖到负载,因此诸如静力矩和动力矩、转子的转动惯量、力矩负载、惯性负载这些因素就不需要考虑了,所以最终选择了市场上价格相对较为便宜而又比较常见的28BYJ48型四相五线制步进电机,实物图如图1所示。图128BYJ48型四相五线制步进电机实物图其主要技术参数如表1所示表128BYJ48步进电机主要技术参数电机型号电压V相数相电阻10步距角度减速比起动转矩100PPSGCM起动频率定位转矩GCM28BYJ48031243005625/5416430055030022步进电机驱动方案的选择方案一使用多个功率放大器件驱动电机通过使用不同的放大电路和不同参数的器件,可以达到不同的放大的效果,放大后能够得到较大的功率。但是由于使用的是四相的步进电机,就需要对四路信号分别进行放大,由于放大电路很难做到完全一致,当电机的功率较大时运行起来会不稳定,而且电路的制作也比较复杂。方案二使用L298N芯片驱动电机L298N芯片可以驱动两个二相电机,也可以驱动一个四相电机,输出电压最高可达50V,可以直接通过电源来调节输出电压;可以直接用单片机的IO口提供信号;而且电路简单,使用比较方便。但是芯片的价格相对较高,本设计只是简单的对步进电机进行控制。方案三利用ULN2003A来驱动步进电机ULN2003A是高压大电流达林顿晶体管阵列系列产品,具有电流增益高、工作电压高、温度范围宽、带负载能力强等特点,适应于各类要求高速大功率驱动的系统。ULN2003A由7组达林顿晶体管阵列和相应的电阻网络以及钳位二极管网络构成,具有同时驱动7组负载的能力,为单片双极型大功率高速集成电路。通过比较,使用ULN2003A芯片可以充分发挥它的功能,能稳定地驱动步进电机,而且价12格不高,故选用ULN2003A驱动电机。ULN2003A芯片成本比较低,又实现了本次设计的所有要求。方案三比较合适此次设计。23显示方案的选择方案一采用LED数码管显示电机的设定距离以及实际运行的距离。在本系统中需要用到6只LED数码管进行动态显示才可以达到要求。采用LED的优点是亮度高,醒目,价格便宜,寿命长;缺点是只能显示09的数字和一些简单的字符,电路复杂,占用资源较多且信息量小。方案二用LCD(RT1602C)液晶显示,其优点是能显示更多的字符,工作电流比LED小几个数量级,故其功耗低,且有着良好的人机界面,体积小,功耗极低。基于上述考虑,所以本系统选择方案二。23键盘方案的选择方案一采用独立式键盘,每个按键占用一条I/O线,当按键数量较多时,I/O口利用率不高,但程序编制简单,适用于所需按键较少的场合。方案二采用矩阵式键盘,电路连接复杂,但提高了I/O口利用率,软件编程较复杂,适用于需使用大量按键的场合。由于本设计要求用户扩展的键盘按键有数字键09和功能键等共16个,因此键盘电路采用独立式键盘将会占用很多的I/O线,所以采用独立式键盘不实用,故采用44矩阵式键盘。23步进电机位置检测方案的选择方案一红外检测,传输要求比较严苛,必须要对准方向,且中间不能有障碍物,限制较多,性能也比较差。方案二霍尔传感器,体积小,重量轻,精度高,线性度好,动态性能好,过载能力强,还可以通过使用多块磁钢来倍频,以增加测量的精度,并且还有电路简单,易处理等优点。基于上述考虑,所以本系统选择方案二。24整体方案本系统先通过矩阵键盘设置步进电机的运行距离,单片机采集键盘指令,给出相应的步进电机控制信号,然后通过霍尔传感器来检测步进电机的实际运行距离,并且通过液晶显示器来显示所设定的步进电机的运行距离和实际运行距离,当实际运行距离大于等于设定的运行距离时,步进电机停止工作。结合以上各部分方案的对比,系统的整体方案方框图如图2所示。键盘控制时钟电路单片机LCD1602步进电机驱动位置检测步进电机图2整体方案设计方框图3主要芯片介绍与硬件电路设计31单片机最小系统模块311单片机介绍STC89C52是STC公司生产的一种低功耗、高性能CMOS8位微控制器,具有8K在系统可编程FLASH存储器。STC89C52使用经典的MCS51内核,但做了很多的改进使得芯片具有传统51单片机不具备的功能。在单芯片上,拥有灵巧的8位CPU和在系统可编程FLASH,使得STC89C52为众多嵌入式控制应用系统提供高灵活、超有效的解决方案。具有以下标准功能8K字节FLASH,512字节RAM,32位I/O口线,看门狗定时器,内置4KBEEPROM,MAX810复位电路,3个16位定时器/计数器,4个外部中断,一个7向量4级中断结构(兼容传统51的5向量2级中断结构),全双工串行口(王卫星,2009)。另外STC89C52可降至0HZ静态逻辑操作,支持2种软件可选择节电模式。空闲模式下,CPU停止工作,允许RAM、定时器/计数器、串口、中断继续工作。掉电保护方式下,RAM内容被保存,振荡器被冻结,单片机一切工作停止,直到下一个中断或硬件复位为止。最高运作频率35MHZ,6T/12T可选。其引脚图如图3所示。图3STC89C52引脚图312单片机最小系统单片机控制模块由STC89C52最小系统组成,包括STC89C52单片机、晶振电路和复位电路。晶振电路由两个30PF左右电容和一个12MHZ晶体振荡器构成,接入单片机的X1、X2引脚。单片机复位端高电平有效。单片机最小系统如图4所示。图4单片机最小系统32键盘电路设计本设计采用了44矩阵式键盘也称行列式键盘,它由行和列组成,在每一个行列的交叉点上设置一个按键,这样一个8位的控制端口(P1口)就可以实现,比独立式键盘节省了一半端口。其电路原理图如图5所示。图5键盘电路键盘对应的按键功能如表2。表2按键功能行列号第一列第二列第三列第四列第一行E正转987第二行D反转654第三行C加速321第四行B减速F停止0A开始33显示模块331LCD1602介绍1602液晶也叫1602字符型液晶,它是一种专门用来显示字母、数字、符号等的点阵型液晶模块(胡学海,2005)。它由若干个5X7或者5X11等点阵字符位组成,每个点阵字符位都可以显示一个字符,每位之间有一个点距的间隔,每行之间也有间隔,起到了字符间距和行间距的作用,正因为如此所以它不能很好地显示图形(用自定义CGRAM,显示效果也不好)。LCD1602是指显示的内容为16X2,即可以显示两行,每行16个字符液晶模块(显示字符和数字),LCD1602已经很普遍了,具体的就不再介绍了。其引脚图如图6所示。VSSVCCV0RSRWEDB0DB1DB2DB3DB4DB5DB6DB7BLADBK12345678910111213141516图6LCD1602引脚图332LCD1602电路图本系统采用1602字符型液晶显示模块来显示设定的步进电机的运行距离与步进电机的实际运行距离。LCD1602与单片机的接线如图5所示。LCD1602的控制端口RS、R/W、E分别与单片机的P33、P36、P37相连,LCD的八个数据引脚分别与单片机的P0端口八个引脚相连,由于单片机P0端口内没有内部上拉电阻,所以当其作为输出端口时,必须外加上拉电阻,并且通过把LCD1602与一个电位器连接来控制LCD1602的显示亮度。其电路图如图7所示。图7LCD1602电路34驱动模块341ULN2003A介绍本系统采用额定电压为5VDC,相数为4相的步进电机,驱动方式为4相8拍。一共有5跟线连接,其中红色的为电源线。采用单极性直流电源供电。只要对步进电机的各相绕组按合适的时序通电,就能使步进电机步进转动。由于单片机P口输出的电流比较弱不能驱动步进电机,所以要加一个ULN2003A芯片来放大电流使之能驱动步进电机工作(李仁定,1999)。ULN2003A内部结构及等效电路图如图8所示图8ULN2003A内部框图及等效电路图342驱动电路图把STC89C52的P20、P21、P22、P23口分别与ULN2004芯片的输入端IN1,IN2,IN3,IN4接口连接,P2口通过软件实现高低电平的依次转换,然后再把P2口的电平信号通过ULN2003芯片放大后再把放大后的信号通过OUT1,OUT2,OUT3,OUT4一次接到步进电机的ABCD四相。驱动电路与单片机连接电路图如图9所示。图9驱动电路35位置检测模块本设计需要测量步进电机实际运行的距离,采用了A3144E霍尔元件来测量。351A3144E介绍霍尔传感器是利用霍尔效应原理制成的一种磁敏传感器。它是近年来为适应信息采集的需要而迅速发展起来的一种新型传感器,这类传感器具有工作频带宽、响应快、面积小、灵敏度高、便于集成化、多功能等特点,且易于计算机和其他数字仪表接口,因此被广泛用于自动监测、自动报警、自动控制、信息传递、生物医学等各个领域,此处主要介绍开关型霍尔传感器。开关型霍尔传感器由稳压器A、硅霍尔片B、差分放大器C、施密特触发器D和OC门输出E五部分组成,如图16所示,从输入端1输入电压VCC,经稳压器A稳压后加在18硅霍尔片B的两端,以提供恒定不变的工作电流。在垂直于霍尔片的感应面方向施加磁场,产生霍尔电势VW,该N信号经差分放大器C放大后送至施密特触发器D整形。当磁场到达“工作点”时,触发器D输出低电压,此状态称为“开”。当施加的磁场到达“释放点”时,触发器D输出低电压,使三极管E截止,输出端V,输出高电位,此状态称为“关”。这样2次高低电位变换,使霍尔传感器完成了1次开关动作。开关型霍尔传感器功能方框图及其输出电压与外加磁感应强度关系如图10和11所示。ABDC123GNDEVCCV0图10霍尔传感器功能方框图工作点释放点VOHV0BVRPVOPVOL图11输出电压与外加磁感应强度关系352位置检测电路图位置检测电路是由开关型霍尔传感器和磁钢组成,其中霍尔元件与单片机的连接电路图如图12所示。图12位置检测电路4程序设计41主程序单片机开始工作时首先要对系统初始化,且LCD1602也要进行初始化,对各标志位、各变量进行初始化,对各端口初始化等。初始化后系统进入LCD显示主界面,然后系统进入循环部分,进入循环部分后单片机会不断检测是否有键按下,如果没有则继续检测,如果检测到有任意键按下,则进入相应的按键子程序,而且本系统还会不断的检测单片机与霍尔传感器连接的端口是否为低电平,如果不是则继续检测,如果是则进行实际运行距离的计算。流程图如图13所示。实际距离大于等于设定距离系统初始化主界面有数字键按下相应数字按键子程序P35端口脉冲为0有功能键按下相应功能按键子程序计算实际运行距离是否否否否是是是结束有功能键按下相应功能按键子程序是否开始图13主程序流程图42数字键处理程序当按下数字键值,系统就会执行相应的数字按键子程序,本程序就是把将相应设定的距离变量左移一位,并将这个数字值存入设定的距离变量的个位。得到的流程图如图14所示程序入口数字键按下设定运行距离变量左移一位,数字值存入个位返回是否图14数字键处理程序流程图43功能键处理程序当功能键按下时,系统就会执行相应的功能按建子程序,则系统功能键相对应的功能就会得到实现,而本系统功能键包括开始、停止、正转、反转、加速、减速。得到的流程图如图15所示。程序入口功能键按下执行相应功能返回是否图15功能建处理程序流程图5结论本次设计的重点在于对步进电机的控制,由于一开始对步进电机的相关知识并不是很了解,出现了失步和堵转的现象,通过查找资料,知道这是启动频率过高所导致的,查找所买步进电机的相关资料,并且通过调试,得到合适的启动速度,并且通过加速达到所设置的速度,通过理论计算编程实现了电机的精确定位。本次设计通过44矩阵键盘作为输入设备,能根据操作者的意愿,决定步进电机运行的快慢,步进电机可以在不超过其最高运行速度内以几个档位的速度运行,并且在设置的距离内精确定位;本系统可以显示设定的距离,也可以用霍尔传感器检测实际距离并加以显示,方便了与所设置距离进行对比。本设计达到了设计的预期要求,是比较理想的步进电机控制方案。参考文献胡学海单片机原理及应用系统设计M北京电子工业出版社2005290293李仁定电机的微机控制M北京机械工业出版社19995574王卫星单片机原理与应用开发技术M北京中国水利水电出版社200992220谢辉,唐勇步进电机发展回顾与前景展望J重庆三峡学院学报,2010,26125110111附录附录A电路原理图附录B源程序代码INCLUDEINCLUDEINCLUDEDEFINEUINTUNSIGNEDINT/宏定义,为了后面定义变量书写简便DEFINEUCHARUNSIGNEDCHARSBITLCDRSP33/定义端口SBITLCDRWP36SBITLCDENP37SBITCEJUP35BITFLA

温馨提示

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

评论

0/150

提交评论