基于单片机与步进电机的单轴控制系统设计.docx

上传人:b****8 文档编号:27614745 上传时间:2023-07-03 格式:DOCX 页数:24 大小:305.51KB
下载 相关 举报
基于单片机与步进电机的单轴控制系统设计.docx_第1页
第1页 / 共24页
基于单片机与步进电机的单轴控制系统设计.docx_第2页
第2页 / 共24页
基于单片机与步进电机的单轴控制系统设计.docx_第3页
第3页 / 共24页
基于单片机与步进电机的单轴控制系统设计.docx_第4页
第4页 / 共24页
基于单片机与步进电机的单轴控制系统设计.docx_第5页
第5页 / 共24页
点击查看更多>>
下载资源
资源描述

基于单片机与步进电机的单轴控制系统设计.docx

《基于单片机与步进电机的单轴控制系统设计.docx》由会员分享,可在线阅读,更多相关《基于单片机与步进电机的单轴控制系统设计.docx(24页珍藏版)》请在冰豆网上搜索。

基于单片机与步进电机的单轴控制系统设计.docx

基于单片机与步进电机的单轴控制系统设计

 

毕业论文

基于单片机与步进电机的单轴控制系统设计

 

摘要

步进电机是一种通过电脉冲信号控制相绕组电流实现转动的机电元件,与其他类型电机相比具有易于开环精确控制、无积累误差等优点,在众多领域中获得广泛的应用。

首先设计了系统基本方案,进行了单片机和步进电机的选用;其次,进行了系统硬件电路主要模块设计,包括单片机最小系统、通信电路和看门狗电路的设计;最后,根据系统功能需求,并结合硬件电路,进行了系统软件部分的设计,软件部分主要包括系统主程序流程图设计、步进和慢速模式子程序流程图设计等。

关键词:

单片机;步进电机;AT89C51;PMM8713

 

ABSTRACT

 Steppingmotorisakindofcontrolledbyelectricalpulsesignalphasewindingcurrenttoachieveelectromechanicalcomponentsrotating,comparedwithothertypesofmotorcontrolwitheasy-to-open-loopprecision,noaccumulationoferroroftheadvantages,iswidelyusedinmanyfields.

First,thesystemdesignscheme,theselectionofMCUandsteppermotor;secondly,themainmoduleofthesystemhardwarecircuitdesign,includingthedesignoftheminimumsystemoftheone-chipcomputer,communicationcircuitandawatchdogcircuit;finally,accordingtothesystemfunctionalrequirements,combinedwiththehardwarecircuit,thedesignofsystemsoftwarepart,softwarepartincludingthemainprogramflowchart,systemdesignstepandslowmodesubroutineflowchartdesign.

Keywords:

singlechip;steppermotor;AT89C51;PMM8713

 

 

绪论

步进电机是将电脉冲信号转变为角位移或位移的开环控制元件。

它的旋转是以固定的角度一步一步运行的,具有性价比高,易于控制和无累积误差等优点。

因此,它成为机电一体化的关键产品之一,被广泛地应用到各种自动化系统中,如数控机床等。

运动控制是在科学技术发展和工业兴旺的基础上综合应用机械、微电子、信息、电力电子、接口与编程等技术,并对运动机械进行高性能、高质量、高可靠性、低能耗意义上的综合性系统设计与实现的工程技术。

运动控制的共同点在于它们都需要至少一个轴的定位控制,此轴可以相对于某一主轴(主轴定位)或相对于某个坐标系统(坐标系统定位)进行定位控制。

例如,用显微镜在环境恶劣的条件下进行观测时,往往会出现设备难以实现微小的控制,或产生微小但却不能忽视的误差,这些因素往往会导致一些不确定的意外出现。

单片机与步进电机结合的控制系统有助于这个问题的解决,以便研究能够顺利进行。

因此,本课题研究的控制系统在现实生活中有着十分理想的现实意义,有助于在一些特定环境下进行坐标定位控制。

基于单片机与步进电机的单轴控制系统研究的主要内容包括单片机最小系统设计、通信协议的相关设计和步进电机的的速度控制等,并对所设计的控制系统进行调试,对整个系统进行分析,找出其缺点并给出改进方案。

 

1系统总体方案设计

1.1系统基本方案设计

基于单片机的步进电机的单轴控制系统,是通过单片机控制一台步进电机运动,以达到预期目的。

下位机控制器采用美国ATMEL公司生产的低电压、高性能的COMS八位单片机AT89C51,实现对三个坐标的电机控制。

上位机与下位机之间通过串行接口进行通信,使下位机可以接受处理上位机所发送的命令,以及返回给上位机对应标志,如图1-1所示。

 

图1-1系统组成框图

在对步进电机发送脉冲时,依照慢速和快速两种模式,以不同方式调节发送的脉冲,比如在快速模式中,首先进行升频加速,当加速到预定速度或支持的最高速度时,发恒定脉冲匀速运行,当检测到停止命令时,开始降频直到脉冲频率较低时停止发脉冲,电机停止。

整个系统是由硬件和软件两部分组成。

系统硬件部分包括单片机最小系统、串行通信模块、看门狗模块、电机驱动模块等;系统软件部分包括初始化模块、数据接收模块、数据处理模块、数据发送模块、快速模式模块、慢速模式模块、定时器0中断模块。

1.2单片机的选择及外部接口功能设计

AT89C51是一种带4K字节闪烁可编程可擦除只读存储器(FPEROM—FALSHPROGRAMMABLEANDERASABLEREADONLYMEMORY)的低电压,高性能CMOS8位微处理器。

AT89C2051是一种带2K字节闪烁可编程可擦除只读存储器的单片机。

单片机的可擦除只读存储器可以反复擦除100次。

该器件采用ATMEL高密度非易失存储器制造技术制造,与工业标准的MCS-51指令集和输出管脚相兼容。

由于将多功能8位CPU和闪烁存储器组合在单个芯片中,ATMEL的AT89C51是一种高效微控制器,AT89C2051是它的一种精简版本。

其主要特性有以下几点:

(1)全静态工作:

0Hz-24MHz;

(2)三级程序存储器锁定;

(3)128×8位内部RAM;

(4)32可编程I/O线;

(5)两个16位定时器/计数器;

(6)5个中断源;

(7)可编程串行通道;

(8)低功耗的闲置和掉电模式;

(9)片内振荡器和时钟电路;

所接电路如图1-2所示:

 

图1-2主芯片AT89C51及其外延电路

根据系统控制功能需求,AT89C51芯片外部接口功能设计如表1-1所示:

2.3步进电机的选择

步进电机又称脉冲电机或阶跃电机。

它是一种感应电机,是将电脉冲信号转变为角位移或线位移的开环控制元步进电机件。

在非超载的情况下,电机的转速、起停之取决与脉冲的频率和脉冲数,而不受负载的影响,当步进驱动器接受到一个脉冲信号后,就驱动步进电机按设定的方向转动一个固定的角度,称为“步距角”,它的转动是以固定的角度一步一步运行的。

可以通过控制脉冲个数来控制角位移量,从而达到准确定位的目的。

同时,可以通过控制脉冲频率来控制电机的速度和加速度,从而达到调速的目的。

步进电机的种类很多,有旋转式步进电机,也有直线步进电机;从励磁相数来分有二相、三相、四相、五相等步进电机。

常用的旋转式步进电机分为三种:

(1)反应式步进电机;

(2)永磁型步进电机;(3)混合型步进电机。

本系统之所以选择步进电机是因为步进电机具有以下优点:

(1)由于每步的精度在百分之三到百分之五,而且不会积累误差,所以具有较好的位置精度和运动的重复性;

(2)由于没有电刷可靠性较高,因此电机的使用寿命仅仅取决与轴承;

表1-1AT89C51芯片外部接口功能设计

AT89C51引脚号

连接点序号

引脚说明

外接接口(步进电机驱动/串行通信接口/看门狗芯片)

1

XF

I/O接口P1.0

电机的方向输入端

2

XP

I/O接口P1.1

电机的脉冲输入端

10

151

串行输入线RXD

MAX232芯片的串行数据输入

11

152

串行输出线TXD

MAX232芯片的串行数据输出

39

141

I/O接口P0.0

X25045芯片选择输入

38

142

I/O接口P0.1

X25045芯片的串行输入

37

143

I/O接口P0.2

串行时钟输入

36

144

I/O接口P0.3

X25045芯片的串行输出

19

振荡器反相放大器及内部时钟发生器的输入端

18

振荡器反相放大器的输出端

9

131

复位信号输入

看门狗芯片复位RST管脚的复位电路的131口

(3)由于其转速正比与脉冲频率,所以有较宽的转速选择范围;

(4)如把负载直接接到步进电机的转轴上也可以极低速的同步旋转;

(5)电机的响应仅由数字输入脉冲决定,所以可以采用开环控制,使的电机结构较为简单且成本较低;

因为本设计中需要高的精确性,所以采用一般常见的三相异步电机。

2.4步进电机驱动芯片的选择

由于步进电动机不能直接执行单片机所发的指令,因此必须通过专用的步进电动机驱动器进行驱动才能工作。

如图1-3所示,它由脉冲发生控制单元、功率驱动单元、保护单元等组成。

图中点划线所包围的二个单元可以用微机控制来实现。

驱动单元与步进电动机直接耦合,也可理解成步进电动机微机控制器的功率接口。

图1-3步进电机工作原理图

本文根据实际情况选用PMM8713来直接驱动步进电机。

因为从性能上来说PMM8713具有一般芯片都有的特性,而且性价比高,从来源上说PMM8713易获取。

PMM8713是日本三洋电机公司生产的步进电机脉冲分配器,适用于控制三相或四相步进电机。

控制三相或四相步进电机时都可以选择3种励磁方式,每相最小吸入与拉出电流为20mA,它不仅满足后级功率放大器的输入要求,而且在其所有输入端上均内嵌施密特触发电路,抗干扰能力强,其原理框图如图1-4。

图1-4PMM8713原理图

在PMM8713的内部电路中,时钟选通部分用于设定步进电机的正反转脉冲输入发。

PMM8713有两种脉冲输入法:

双脉冲输入法和单脉冲输入法。

采用双脉冲输入法时,CP、CU两端分别输入步进电机正反转的控制脉冲。

当采用单脉冲输入时,步进电机的正反转方向由U/D的高、低电位决定。

 

2系统硬件设计

2.1单片机最小系统设计

系统硬件部分的设计首先要完成单片机的最小系统设计,因为单片机的最小系统在整个设计中起的是核心控制作用,所有指令的输入、输出、控制都是靠单片机的最小系统来实现的。

具体原理图如图2-1所示。

图2-1单片机最小系统原理图

2.2通信模块设计

串行通信模块电路如图2-2所示。

MAX232芯片是美信公司专门为电脑的RS-232标准串口设计的接口电路,使用+5v单电源供电。

其内部结构基本可分三个部分:

第一部分是电荷泵电路。

由1、2、3、4、5、6脚和4只电容构成。

功能是产生+12v和-12v两个电源,提供给RS-232串口电平的需要。

第二部分是数据转换通道。

由7、8、9、10、11、12、13、14脚构成两个数据通道。

 

 

图2-2串行通信模块电路

其中13脚(R1IN)、12脚(R1OUT)、11脚(T1IN)、14脚(T1OUT)为第一数据通道。

8脚(R2IN)、9脚(R2OUT)、10脚(T2IN)、7脚(T2OUT)为第二数据通道。

TTL/CMOS数据从T1IN、T2IN输入转换成RS-232数据从T1OUT、T2OUT送到电脑DB9插头;DB9插头的RS-232数据从R1IN、R2IN输入转换成TTL/CMOS数据后从R1OUT、R2OUT输出。

第三部分是供电。

15脚GND、16脚VCC(+5v)。

串行通信模块电路端口说明如表2-1

表2-1通信模块电路端口说明

MAX232

引脚号

连接点序号

引脚说明

另一端连接的引脚

1

由1、2、3、4、5、6脚和4只电容构成电荷泵电路产生+12v和-12v两个电源,提供给MAX232串口电平的需要

2

3

4

5

6

11

152

串行数据输入

AT89C51芯片的串行输出线TXD

12

151

串行数据输出

AT89C51芯片的串行输入线RXD

14

T1OUT

串行数据输出

接上位机的串行输入线RXD

15

R1IN

串行数据输入

接上位机的串行输出线TXD

 

2.3看门狗电路

X25045是美国XICOR公司的生产的标准化集成电路,它将EEPROM、看门狗定时器、电压监控三种功能组合在单个芯片之内,大大简化了硬件设计,提高了系统的可靠性,减少了对印制电路板的空间要求,降低了成本和系统功耗,是一种理想的单片机外围芯片。

X25045芯片内包含有一个看门狗定时器,可通过软件预置系统的监控时间。

在看门狗定时器预置的时间内若没有总线活动,则X25045将从RESET输出一个高电平信号,经过微分电路C2、R3输出一个正脉冲,使CPU复位。

图2电路中,CPU的复位信号共有3个:

上电复位(C1、R2),人工复位(S、R1、R2)和WATCHDOG复位(C2、R3),通过或门综合后加到RESET端。

C2、R3的时间常数不必太大,有数百微秒即可,因为这时CPU的振荡器已经在工作。

看门狗定时器的预置时间是通过X25045的状态寄存器的相应位来设定的。

如表2-2所示,X25045状态寄存器共有6位有含义,其中WD1、WD0和看门狗电路有关,其余位和EEPROM的工作设置有关。

看门狗电路的定时时间长短可由具体应用程序的循环周期决定,通常比系统正常工作时最大循环周期的时间略长即可。

编程时,可在软件的合适地方加一条喂狗指令,使看门狗的定时时间永远达不到预置时间,系统就不会复位而正常工作。

当系统跑飞,用软件陷阱等别的方法无法捕捉回程序时,则看门狗定时时间很快增长到预置时间,迫使系统复位。

芯片X25045看门狗芯片接线如图2-3

 

图2-3看门狗电路

引脚及复位电路接口说明如表2-2。

 

表2-2引脚及复位电路接口

X25045

引脚号

连接点序号

引脚说明

另一端连接的引脚

1

141

芯片选择输入

AT89C51芯片的I/O接口P0.0

2

144

串行输出,数据由此引脚逐位输出

AT89C51芯片的I/O接口AT89C51芯片的P0.3

3

写保护输入

接电源

4

地,接GND

接地

5

142

串行输入,数据或命令由此引脚逐位写入X25045

AT89C51芯片的I/O接口P0.1

6

143

串行时钟输入

AT89C51芯片的I/O接口P0.2

7

132

复位输出

8

电源电压

接电源

131

复位信号输出

AT89C51芯片的复位信号输入

132

X25045芯片复位输出

X25045芯片的7引脚

系统硬件总图如附录所示。

 

 

3系统软件设计

3.1系统功能描述

系统工作方式是用户通过上位机设定系统工作模式及相关参数,如步进电机的启动,转速的选择等,传送给下位机,下位机按照上位机指定的命令和参数控制电机运行。

运行完成后返回给上位机完成信号,等待上位机发送下一次命令和参数。

3.1.1 控制命令协议码

串行口以方式1工作,每帧数据为10位:

1个起始位“0”、8个数据位、1个停止位“1”。

8个数据位的协议码如图3-1:

图3-18个数据位的协议码

D7D6:

保留(发送协议码时设定为:

00)

D5D4:

模式设定:

00---步进模式

01---快速模式

10---慢速模式

11---步进脉冲数设定

D3D2:

电机选择:

00--步进电机

D1:

运动方向:

0---正向

1---反向

D0:

启动停止:

0---停止运行

1---开始运行

该系统工作模式运行特点:

(1)快速模式:

接收速度,快速升频加速到指定速度,一直运行,直到发送停止指令后,降频减速直到停止。

(2)慢速模式:

接收速度,以指定的速度一直运行,直到发送停止指令后停止。

3.1.2指令说明

上位机每发送一个字节(不管是命令还是数据),下位机接收完毕并完成相应动作后都会回发一个或数个状态字节。

因此,上位机只能确认已经收到这些状态字节后才能发送下一个字节(刚开机第一次发送除外),否则视为发送无效。

具体指令说明如表3-1所示。

 

表3-1具体指令说明

上位机向下位机发送指令名称

指令含义

下位机向上位机返回的指令

指令的含义

模式设定

由上位机指定电机运行模式、坐标轴、运动方向、启动停止位为0

FF

发送正确

FE

发送错误

重新发送

EE

数据错误

重新发送

步进脉冲数设定

(电机运行模式仅为步进模式时)上位机通知下位机准备脉冲数接收

FC

发送正确

FE

发送错误

重新发送

步进脉冲数接收

(电机运行模式仅为步进模式时)上位机发送脉冲数

FC

FC

FC

FD

接收成功

接收成功

接收成功

接收完成

速度设定

上位机发送设定运行速度

FC

FC

FC

FD

接收成功

接收成功

接收成功

接收完成

 

电机启动

上位机发送电机启动指令

FF

发送正确

成功启动

FE

发送错误

未启动

重新发送

 

电机停止

上位机发送电机停止指令

FF

发送正确

停止成功

FE

发送错误

未停止

重新发送

3.2系统软件主流程设计

该系统的软件主流程如图3-1所示。

先系统初始化,判断通信是否正常工作,选择需要运行的模式,再启动电机,使其正常工作。

 

 

 

图3-1系统的软件主流程

图中的初始化模块包括:

定时器初始化、串口初始化、CPU开中断,允许串行口中断、看门狗初始化。

初始化流程图如图3-2。

启动定时器1,CPU开中断。

 

 

图3-2初始化流程图

 

3.3电机运行流程图设计

电机流程如图3-3。

显示系统初始化,接受信号,再电机启动、停止。

图3-3电机运行主流程

3.4系统子程序设计

3.4.1步进模式实现

此模式经由上位机发送脉冲数和设定速度,运行时以设定速度运行,当脉冲数计够设定值时,停止。

在运行时可以有上位机发送停止命令令其停止。

步进模式流程图如图3-4。

3.4.2慢速模式实现

此模式经由上位机发送设定速度,运行时以设定速度一直运行下去,由上位机发送停止命令使其停止。

慢速模式流程图如图3-5。

 

 

图3-4步进模式流程图

 

 

图3-5慢速模式流程图

 

结论

通过单片机控制步进电机,实现了步进电机的启停、转向和转速的控制,系统采用串行通信实现上、下位机的数据通讯。

实现了对步进电机的控制及对其工作状态的检测。

在设计中,选用的是AT89C51这种常用的芯片,通过设计其复位电路,通信电路,晶振电路等来完成系统的控制电路,在对于步进电机方面,采用驱动芯片来直接驱动电机,在软件方面,主要是对步进电机不同的运行方式进行设计。

通过对本课题的研究和学习,加深了自身对大学知识的学习,特别是Protel软件方面的运用。

但是本设计因为采用的芯片是一般常见的AT89C51,所以在控制电机运行方面只能做到何时启停,只能按照预设的运行模式工作,在自动控制,同一模式下电机转速调节等方面还有待改进。

通过本次毕业设计,我的知识领域得到进一步的扩展,专业技能得到进一步的提高,同时增强了分析和解决问题的综合能力,另外,还培养了自己严肃认真的科学态度和严谨求是的工作作风,为以后的学习、工作打下了坚实的基础。

参考文献

[1]祁伟,杨事.单片机C5l语言教程与实验[M].北京:

北京航空航天大学出版社,

200623-26

[2]李晓贞.基于单片机的步进电机调速研究[J].农业装备与车辆工程2008第5

[3]丁伟雄.步进电机的控制原理及其单片机控制实现[J],煤矿机械2005

[4]毕绍新.步进电机驱动控制的应用研究[D],天津大学硕士论文2003.

[5]刘兴辉,毕国玲.步进电机的单片机控制系统研制[J]辽宁大学学报2007第34卷

第4期

[6]徐益民.步进电机的单片机控制系统的设计[J],煤矿机械,2005

[7]李国厚.步进电机驱动与控制系统的设计[J]煤矿机械2008.29卷第2期

[8]马忠梅.籍顺心,张凯,等.单片机的C语言应用程序设计[M].北京:

北京航

空航天大学出版社,2005:

172-188

[9]敬岚,朱海君.步进电机控制系统的设计及其应用[J]核技术,2005(6).

[10]周航慈.单片机应用程序设计技术[M],北京航空航天大学出版社,2002,7.

[11]俞家琪,何立民.步进电机基础教程.北京:

北京航空航天大学出版社,2000.

[12]付云强.AT89C51在步进电机控制系统中的应用煤矿机械2007第8期.

 

致谢

光阴似白驹过隙,短暂的四年大学生活已经接近尾声。

本文是本科四年生活的最后一个学习任务。

学士毕业设计也到了最后敲定的时间。

在此,我想表达下我的感激之情。

能够完成本设计论文,首先要感谢我的指导老师——赵水英老师及慈溪金宏电气公司的张金伦老师。

从课题的选择到项目的最终完成,赵老师都很关心我论文的进展情况,并对我的设计给予建议及优化。

在此,对赵老师表示由衷的感谢。

没有您的帮助我不会学到这么多的知识。

感谢在做本设计中给予我帮助的同学们。

由于知识水平有限,我在做本设计的过程遇到不少的问题,很感谢同学们的指导和帮助。

感谢大学四年带过我的所有老师,他们精心的栽培为我以后的学习工作打下了坚实的基础。

这几年的时间里,我从各位老师那里学到的不仅是专业知识,还有他们身上优秀的品质以及为人处事的道理。

再次感谢各位老师!

附录

系统硬件总图

 

展开阅读全文
相关资源
猜你喜欢
相关搜索

当前位置:首页 > 职业教育 > 职业技术培训

copyright@ 2008-2022 冰豆网网站版权所有

经营许可证编号:鄂ICP备2022015515号-1