本科毕业设计基于单片机的单轴运动控制器的设计.docx
《本科毕业设计基于单片机的单轴运动控制器的设计.docx》由会员分享,可在线阅读,更多相关《本科毕业设计基于单片机的单轴运动控制器的设计.docx(80页珍藏版)》请在冰豆网上搜索。
![本科毕业设计基于单片机的单轴运动控制器的设计.docx](https://file1.bdocx.com/fileroot1/2023-6/19/04cd790f-4e15-41ba-a45f-700d7d0feab8/04cd790f-4e15-41ba-a45f-700d7d0feab81.gif)
本科毕业设计基于单片机的单轴运动控制器的设计
南京工程学院
康尼学院
本科毕业设计(论文)
题目:
单轴运动控制器设计
专业:
自动化(数控技术)
班级:
K数控092学号:
240091211
学生姓名:
于少龙
指导教师:
孙来业高级工程师
起迄日期:
2013.2~2013.6
设计地点:
微机原理与应用实验中心
GraduationDesign(Thesis)
TheDesignoftheUniaxialMotionController
Byyushaolong
Supervisedby
SeniorEngineerSUNLaiye
SchoolofConniecollege
NanjingInstituteofTechnology
June,2013
摘要
随着现代科技的发展,单轴运动控制已广泛应用于日常生活之中,在各行各业都有着极其重要的应用。
本文描述了基于AT89S52的单轴运动控制器设计与实现过程。
通过单片机连接步进电机驱动器,控制步进电机的进行,并通过数码管显示器显示出来。
工作时,通过键盘输入给定速度,加速度或位移值,从而控制步进电机按指定的速度,加速度和位移值进给。
单轴运动控制系统的设计包括硬件设计和软件设计两大部分,根据具体情况,硬件设计包括以下模块:
主控电路,键盘输入模块,脉冲发生模块,数码管显示模块,复位电路,isp下载电路,电源电路等。
软件设计则主要包括主控程序设计,键盘显示程序设计,控制参数的输入与计算,电机控制程序设计等。
键词:
单片机;步进电机;单轴运动
ABSTRACT
Withthedevelopmentofmoderntechnology,single-axismotioncontrolhasbeenwidelyusedindailylife,inallwalksoflifehaveaveryimportantapplication.
ThispaperdescribestheAT89S52basedonthesingle-axismotioncontrollerdesignandimplementationprocess.Throughthemicrocontrollerconnectedsteppermotordriver,steppermotorcontrolfor,andthroughthedigitaldisplayappears.Work,throughthekeyboardinputgivenspeed,accelerationordisplacement,soastocontrolasteppermotortothespecifiedspeed,accelerationordisplacementfeed.
Single-axismotioncontrolsystemdesignincludeshardwaredesignandsoftwaredesigntwoparts,dependingonthecircumstances,thehardwaredesignincludesthefollowingmodules:
themaincontrolcircuit,keyboardinputmodule,pulsegeneratormodule,LEDdisplaymodule,resetcircuit,ispdownloadcircuit,powersupplycircuit.Softwaredesignmainlycomprisesamaincontrolprogramdesign,thekeyboarddisplayprogramdesignedtocontroltheparametersoftheinputandcalculation,motorcontrolprogramdesign.
Keywords:
microcomputer;Steppingmotor;Uniaxialmotion
第一章绪论................................................................................................1
1.1引言1
1.1.1设计背景及意义1
1.1.2设计任务与要求2
1.1.3发展现状及前景2
1.2本文结构3
第二章系统方案提出与设计4
2.1系统功能概述4
2.2总体方案设计4
第三章系统硬件电路设计.........................................................................5
3.1单片机系统模块.......................................................................................5
3.1.1AT89S52特点及特性5
3.1.2管脚及功能说明.........................................................................................6
3.1.3单片机最小系统8
3.2键盘输入模块...............................................................................................9
3.2.1键盘设计方案及论述..................................................................................9
3.2.2独立键盘测................................................................................................10
3.2.3键盘连接原理图........................................................................................11
3.3数码管显示模块...........................................................................................12
3.3.174HC595芯片介绍...................................................................................12
3.3.2数码管显示连接电路................................................................................15
3.4串行通信模块................................................................................................16
3.4.1串行通信原理...........................................................................................16
3.4.2MAX232芯片介绍...................................................................................17
3.4.3RS-232接口介绍......................................................................................18
3.4.4串行接口原理图.......................................................................................19
3.5在线下载模块…............................................................................................20
3.6电机控制模块...............................................................................................21
3.6.1ULN2803特点及特性...............................................................................21
3.6.2电机驱动模块电路图...............................................................................22
3.7电源电路模块.............................................................................................22
3.7.1LM7805特点...........................................................................................22
3.7.2电源电路原理图......................................................................................23
第四章系统软件设计.........................................................................................24
4.1系统软件设计概述........................................................................................24
4.2Keil开发软件介绍.........................................................................................24
4.3系统主控程序流程图....................................................................................25
4.4键盘控制流程图............................................................................................26
4.5步进电机控制流程图....................................................................................27
第五章步进电机与驱动器的控制...............................................................30
5.1步进电机选型.............................................................................................30
5.2步进电机的控制方法....................................................................................30
5.3驱动器选型...................................................................................................32
第六章结论........................................................................................................36
6.1论文总结.....................................................................................................36
6.2感想.............................................................................................................36
6.3致谢...............................................................................................................38
参考文献.................................................................................................................39
附录A硬件设计原理图与PCB图..........................................................................40
附录B软件程序清单.............................................................................................46
第一章绪论
1.1引言
单轴运动控制器,成本低,性能好,参数设计灵活,方便,能在不同位移、速度、加速度下实现步进电机精确、快速、有效的定位控制,有一定市场应用价值。
目前单轴运动控制器在自动流水生产线、小型钻孔设备等生产设备上得到了较好的应用。
可实现自动化操作,本设计具有很大的实用价值。
1.1.1设计背景与意义
自20世纪80年代初期,通用运动控制器已经开始在国外多个行业应用,尤其是在微电子行业的应用更加广泛。
当时运动控制器在我国的应用规模和应用范围很小,国内也没有厂商开发通用的运动控制器产品。
目前,国内的运动控制器生产厂商提供的产品大一致可以分为3类:
第一类是以单片机或微处理器作为核心的运动控制器,这类运动控制器运行速度较慢,精度不高,成本相对较低。
在一些只需要低速运动控制和对轨迹要求不高的轮廓控制场合应用。
第二类是以专用芯片(AsIc)作为核心处理器的运动控制器,这种控制器结构比较简单,但是大多数只能输出脉冲信号,工作于开环控制方式。
由于这类控制器不能提供高速连续插补,也没有前赡功能(Looka}lead),特别是对于大量的小线段连续加工的场合,如模具雕铣加工,就不能使用这类控制器。
第三类是基于Pc总线的以DsP和FPGA作为核心处理器的开放式运动控制器。
这类开放式运动控制器以DsP芯片作为运动控制器的核心处理器,以PC机作为信息处理平台,运动控制器以插卡形式嵌入PC机,即“Pc+运动控制器”的模式。
这样将Pc机的信息处理能力和开放式的特点与运动控制器的运动轨迹控制能力有机地结合在一起,具有信息处理能力强、开放程度高、运动轨迹控制准确、通用性好的特点。
这类运动控制器充分利用了DsP的高速数据处理功能和FPGA的超强逻辑处理能力,便于设计出功能完善、性能优越的运动控制系统。
步进电机是开环伺服系统的执行元件,它将脉冲信号转换成直线或角位移,具有较好的控制性能,其启动、停车、反转及其它任何运行方式的改变都可在少数脉冲内完成,且可获得较高的控制精度,因此在经济型数控机床及自动化设备中得到了广泛的应用。
目前,步进电机的控制方法是多种多样的,有传统方式的,也有采用PLC控制的,而单片机是介于工控计算机和可编程控制器之间的一种新型控制器,它控制功能强,灵活性和适应性好,成本低廉,正逐渐成为步进电机的主要控制装置,使电机的控制方式由模拟控制逐渐让位于以单片机为核心的数字控制。
本文具体讨论了由单片机实现的步进电机的单轴运动控制问题,并结合实例给出实现的方法。
1.1.2设计任务与要求
本设计是基于AT89S52的单轴运动控制.通过单片机连接步进电机驱动器来控制步进电机并通过数码管显示器显示出来。
工作时,通过选择开关,选定工作方式,键盘输入给定速度,加速度或位置值,从而控制外设进行电机控制调节。
设计内容包括单片机测控系统电路原理设计,电路板设计,单片机测控软件设计、软硬件调试等。
单轴运动控制系统的设计包括硬件设计和软件设计两大部分,根据具体情况,硬件设计包括以下模块:
主控电路,键盘输入模块,脉冲发生模块,数码管显示模块,复位电路,isp下载电路,电源电路等。
软件设计则主要分为以下几个部分:
包括主控程序设计,键盘显示程序设计,控制参数的输入与计算,电机控制程序设计等。
1.1.3发展现状及前景
由于运动控制器的应用范围越来越广泛,为了适应新的情况、特定环境和对象,不断会有新的运动规划、多轴插补和控制滤波算法出现。
从我国的经济发展的情况来看,通用运动控制器的应用市场仅仅是刚刚启动。
与美国和欧洲发达国家相比,我国在运动控制器技术开发上政府的投入很少,在该领域没有形成统一的产品标准。
高等院校的教育还没有跟上,没有培养出一大批能够开发和应用运动控制器的人才,使得运动控制器的应用工作受阻,售后技术支持难度加大。
从欧美品牌的功能最完善、最强大;日本和国产的大多数伺服驱动器是执行一个放大器的功能,即称作“ServoAmplifier”,作运动控制时需要接收上位运动控制器发送的脉冲列或者模拟量信号。
而欧美伺服驱动器的位置控制接口一般可以由网络通讯给定,具有强大的独立运动控制的能力,并且具有完备的逻辑控制功能,所以它们往往能够脱离上位运动控制器而独立驱动,这也是造成欧美伺服驱动器价格比日系、国产昂贵的一个原因.国内的一些伺服驱动器也提供单轴运动控制的功能,例如广州数控的DA98B驱动器,它可以让用户自行编辑单轴运动程序,并按照程序做单轴循环运行及输入、输出信号的处理。
伺服驱动器通过解释程序段中用户编辑的运动指令,将其转换为相应的位置指令、速度指令和相应的IO点处理[10]。
但实际上伺服驱动器只实现了类似PLC顺序控制的逻辑功能,并不带有轨迹规划的性质,因而其应用范围也受到很大的限制,与国外的产品存在一定的差距。
[1][2][3]
1.2本文的结构
本文以单轴运动控制器的设计项目作为应用背景,对步进电机控制及单片机控制显示、输入输出等方面进行了研究。
全文共分为六章,各章的主要内容如下:
第一章扼要地介绍了单轴运动控制器的概念、特点与相关研究背景;
第二章研究了整个单轴运动控制功能及其设计方案;
第三章对系统的各个功能模块的硬件设计进行了研究,分为主控电路模块,键盘输入模块,脉冲发生模块,数码管显示模块,复位电路模块,isp下载电路模块,电源电路模块等。
给出了各模块的工作原理、元件选取及硬件连接原理图。
第四章则是根据系统各模块进行软件设计,给出主程序,键盘控制程序,步进电机控制程序等,并绘制系统软件流程图,编写程序。
此外还介绍了Keil开发软件的相关内容。
第五章对步进电机与驱动器的控制进行了分析。
第六章总结了全文的研究工作,给出存在的问题和进一步研究的方向。
第二章系统方案提出与设计
2.1系统功能概述
本设计以AT89S52为核心,用一片AT89S52单片机控制系统工作。
虽然步进电机已经配备了驱动器,但如果直接将单片机端口和驱动器控制接口相连接,端口电压将被拉到0V,因此仅靠单片机端口仍旧不能驱动驱动器,必须在单片机系统中增设驱动装置。
本文采用的是专用驱动器,驱动作为高度工业产品,具有可靠性高、驱动能力强、适用性好的特点,而且使用方便。
控制系统主要由单片机、键盘、显示、驱动等4个模块组成,其中PC上位机用于编写及烧录程序。
控制器通过相应的IO接口,将控制指令发送至驱动电路,可以控制步进电机的运行,完成系统的单轴控制。
2.2总体方案设计
控制系统可实现以下功能:
1、控制步进电机的启动和停止、运行方向、运行速度;
2、显示步进电机的运行状态、方向、转速;
3、通过软件实现细分控制
4、2个硬件限位点(正反向限位);
5、简单的键盘操作及上位机编程两种方式;
6、坐标参数支持相对坐标和绝对坐标
综上要求,系统硬件电路框图如图所示。
图2.1单轴运动控制器结构图
第3章系统硬件电路设计
3.1单片机系统模块
3.1.1AT89S52特点及特性
AT89S52是一种低功耗、高性能CMOS8位微控制器,具有8K在线可编程Flash存储器,使用Atmel公司高密度非易失性存储器技术制造,与工业80C51产品指令和引脚完全兼容。
片上Flash允许程序存储器在线可编程,亦适于常规编程器。
在一个芯片上,拥有灵巧的8位CPU和在线可编程Flash,使得AT89S52为众多嵌入式控制应用系统提供高灵活、超有效的解决方案。
AT89S52具有以下标准功能:
8K字节的Flash,256字节的RAM,32位I/O口,看门狗定时器,2个数据指针,三个16位定时器/计数器,一个6向量2级中断结构,全双工串行口,片内晶振及时钟电路。
另外,AT89S52可降至0Hz静态逻辑操作,支持2种软件,可选择节电模式。
空闲模式下,CPU停止工作,允许RAM、定时器/计数器、串口、中断继续工作;掉电保护方式下,RAM内容被保存,振荡器被冻结,单片机一切工作停止,直到下一个中断或硬件复位为止。
[4]
AT89S52的主要特性是:
●与MCS-51单片机产品兼容
●8K字节在系统可编程Flash存储器
●1000次擦写周期
●全静态操作:
0Hz~33Hz
●三级加密程序存储器
●32个可编程I/O口线
●三个16位定时器/计数器
●八个中断源
●全双工UART串行通道
●低功耗空闲和掉电模式
●掉电后中断可唤醒
●看门狗定时器
●双数据指针
●掉电标识符
3.1.2管脚功能说明
AT89S52引脚如图3.1所示
图3.1AT89S52引脚结构图
VCC:
电源
GND:
接地
P0口:
P0口是一个8位漏极开路的双向I/O口。
作