文档库 最新最全的文档下载
当前位置:文档库 › 【精品】步进电机加减速定位控制系统毕业论文说明书

【精品】步进电机加减速定位控制系统毕业论文说明书

1 绪论

1.1 课题描述

随着电子技术,特别是随大规模集成电路的产生而出现的微型计算机技术的飞速发展,人类生活发生了根本性的改变。如果说微型计算机的出现使现代科学研究得到了质的飞跃,那么可以毫不夸张地说,单片机技术的出现则是给现代工业测控领域带来了一次新的技术革命。目前,单片机以其体积小、重量轻、抗干扰能力强、对环境要求不高、高可靠性、高性能价格比、开发较为容易,在工业控制系统、数据采集系统、智能化仪器仪表、办公自动化等诸多领域得到极为广泛的应用,并已走人家庭,从洗衣机、微波炉到音响、汽车,到处都可见到单片机的踪影。因此,单片机技术开发和应用水平已逐步成为一个国家工业发展水平的标志之一。本课题研究的内容就是以单片机为主要控制元件,通过控制脉冲信号来定位步进电机。

1.2 步进电机参数和特点

1.2.1 基本参数

1.电机固有步距角[8]

它表示控制系统每发一个步进脉冲信号,电机所转动的角度。电机出厂时给出了一个步距角的值,电机给出的值为0.9°1.8°(表示半步工作时为0.9°、整步工作时为1.8°),这个步距角可以称之为…电机固有步距角?,它不一定是电机实际工作时的真正步距角,真正的步距角和驱动器有关。

2.步进电机的相数

是指电机内部的线圈组数,目前常用的有二相、三相、四相、五相步进电机。电机相数不同,其步距角也不同,一般二相电机的步距角为0.9°1.8°、三相的为0.75°1.5°、五相的为0.36°0.72°。

3. 保持转矩(HOLDING TORQUE)

是指步进电机通电但没有转动时,定子锁住转子的力矩。

1.2.2 步进电机的特点

1.一般步进电机的精度为步进角的3-5%,且不累积。

2.步进电机外表允许的最高温度。

步进电机温度过高首先会使电机的磁性材料退磁,从而导致力矩下降乃至于失步,因此电机外表允许的最高温度应取决于不同电机磁性材料的退磁点;一般来讲,磁性材料的退磁点都在摄氏130度以上,有的甚至高达摄氏200度以上,所以步进电机外表温度在摄氏80-90度完全正常。

3.步进电机的力矩会随转速的升高而下降。

当步进电机转动时,电机各相绕组的电感将形成一个反向电动势;频率越高,反向电动势越大。在它的作用下,电机随频率(或速度)的增大而相电流减小,从而导致力矩下降。

4.步进电机低速时可以正常运转,但若高于一定速度就无法启动,并伴有啸叫声。

步进电机有一个技术参数:空载启动频率,即步进电机在空载情况下能够正常启动的脉冲频率,如果脉冲频率高于该值,电机不能正常启动,可能发生丢步或堵转。在有负载的情况下,启动频率应更低。如果要使电机达到高速转动,脉冲频率应该有加速过程,即启动频率较低,然后按一定加速度升到所希望的高频(电机转速从低速升到高速)。步进电机以其显著的特点,在数字化制造时代发挥着重大的用途。伴随着不同的数字化技术的发展以及步进电机本身技术的提高,步进电机将会在更多的领域得到应用。

2 总体方案设计

2.1 总体设计框图

为了实现步进电机的加减速定位控制功能,设计采用的如图2.1的设计框图。

本设计系统采用开环控制,利用AT89C51单片机作为脉冲分配器,通过功率接口控制四相步进电机的加减速运行。

键盘模块控制步进电机的起动、加速、停止、以及定位等各项功能的选择。

LCD显示器上实时的显示步进电机的运行转速和定位功能时候步进电机

运行的转速和总的转数。

89C51单片机系统是整个控制系统的核心,控制系统的各个模块协调工作并且充当步进电机运转时候的脉冲分配器。

图2.1总体设计框图

2.2 控制系统芯片的选取

2.2.1 单片机芯片的选取

随着科学技术的发展,微型计算机技术日益发展,已经在许多领域得到了广泛的应用。随着集成电路工艺的发展,出现了单片机、DSP,ARM等多种单片机。

AT89C51是一种带4K字节闪烁可编程可擦除只读存储器的低电压,高性能CMOS 8位微处理器,俗称单片机。该器件采用ATMEL高密度非易失存储器制造技术制造,与工业标准的MCS-51指令集和输出管脚相兼容。由于将多功能8位CPU和闪烁存储器组合在单个芯片中,ATMEL的AT89C51是一种高效微控制器,为很多嵌入式控制系统提供了一种灵活性高且价廉的方案[6]。51单片机虽然和DSP,ARM相比处理速度和运算速度上都比较慢,但它的体积小、质量轻、价格便宜,它的速度可以满足本次实验的要求,所以我们采用AT89C51这款单片机。

2.2.2 步进电机驱动芯片的原理及其引脚功能

对于设计中的步进电机驱动器采用L298N驱动器。L298N 为SGS-THOMSON Microelectronics 所生产的双全桥步进电机专用驱动芯片( Dual Full-Bridge Driver ) ,内部包含4信道逻辑驱动电路,是一种二相和四相步进电机的专用驱动器,可同时驱动2个二相或1个四相步进电机,内含二

个H-Bridge 的高电压、大电流双全桥式驱动器,接收标准TTL逻辑电位信号,可驱动46V、2A以下的步进电机,且可以直接透过电源来调节输出电压;此芯片可直接由单片机的IO端口来提供模拟时序信号。L298N的内部逻辑图如2.3所示[1]。

图2.3 L298 内部逻辑图[3]

双列直插式封装的L298N,共20个引脚,引脚图及其引脚功能如下图2.4所示。

图2.4 L298N引脚图[2]

L298N驱动器的引脚功能如表2.1所示。

表 2.1 L298引脚功能

2.2.3 显示芯片的选取及其引脚功能

对于显示模块选用LM016L 液晶显示器。LM016L 液晶显示器(LCD )具有功耗低、体积小、质量轻、显示好的特点。点阵字符型液晶显示器把LCD 控制器、点阵驱动器、字符存储器集成在一块印刷电路板上,构成便于应用的液晶模块。这类液晶模块不仅可以显示数字、字符,还可以显示各种图形符号以及少量自定义符号,并且可以实现屏幕的上下左右滚动、文字的闪烁等功能。LM016L 液晶模块采用HD44780 控制器。HD44780 具有简单而功能较强的指令集,可以实现字符移动、闪烁等功能。

图2.5 LM016L 引脚图

LM016L 与单片机MCU (Microcontroller Unit )通讯可采用8 位或者4 位并行传输两种方式。LM016L 液晶模块的引脚功能见表2.2。[6]

表2.2 LM016L 引脚功能表

通过对HD44780 写入控制指令,HD44780 产生显示驱动信号来驱动LM016L。HD44780的控制指令主要有:清除显示(Clear Display)、地址归位(Return Home)、输入模式设定(Entry Mode Set)、显示开关控制(Display OnOff Control)、功能设定(Function Set)、设定CGRAM 的地址(Set CGRAM Address)、设定DDRAM 的地址(Set DDRAM Address)、写DDRAMCGRAM (Write Date to DDRAMCGRAM)、读忙标志和地址(Read Busy Flagand Address)以及从DDRAM 和CGRAM 中读数据(Read Date from DDRAMCGRAM)。

3 硬件电路设计

3.1 AT89C51单片机最小系统

3.1.1 AT89C51单片机主要特性和功能特性

主要特性:

与MCS-51 兼容

4K字节可编程闪烁存储器

全静态工作

0Hz-24Hz

三级程序存储器锁定

128*8位内部RAM

32可编程IO线

两个16位定时器计数器

5个中断源

可编程串行通道

低功耗的闲置和掉电模式

片内振荡器和时钟电路

3.1.2 AT89C51引脚分布图及管脚说明

图3.1 89C51单片机引脚结构图

由上图可知89C51单片机共有包括GND,VCC在内的40个引脚下面着重介绍几个重要的引脚。

P0口由一个输出锁存器,2个三态级输入缓冲器和输出驱动电路及控制电路组成。

P1口是一个准双向口,用作IO口。P1口是一个内部提供上拉电阻的8位双向IO口P1口缓冲器能接收输出4TTL门电流。

P2口比P1口多了一个MUX开关和转换开关控制部分。P2口为一个内部上拉电阻的8位双向IO口,P2口缓冲器可接收,输出4个TTL门电流,当P2口被写“1”时,其管脚被内部上拉电阻拉高,且作为输入。并因此作为输入时,P2口的管脚被外部拉低,将输出电流。这是由于内部上拉的缘故。P2口当用于外部程序存储器或16位地址外部数据存储器进行存取时,P2口输出地址的高八位。

P3口是一个多功能端口。P3口管脚是8个带内部上拉电阻的双向IO口,可接收输出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:复位输入。当振荡器复位器件时,要保持RST脚两个机器周期的高电平时间。

3.1.3 单片机最小系统图

AT89C51单片机在启动时都需要复位,使CPU及系统各部件处于确定的初始状态,并从初态开始工作。单片机的最小系统如图3.2所示。89系列单片机的复位信号是从RST引脚输入到芯片内部的斯密特触发器中的。当系统处于正常工作状态时,且振荡器稳定后,如RST引脚上有一个高电平并维持2个机器周期(24个振荡周期),则CPU就可以响应并将系统复位。上图为手动复位电路,通过接通一个按钮开关,使单片机进入复位状态。

AT89C51芯片内部有一个高增益反相放大器,用于构成振荡器,反相放大器的输入端为XTAL1,输出端为XTAL2,两端跨接石英晶体及两个电容就可以构成稳定的自激振荡器。电容器C1和C2通常取22pf左右,可稳定频率并对振荡频率有微调作用。振荡脉冲频率范围为0~24MHz。[4]

图3.2 单片机最小系统

3.2 步进电机加减速定位控制电路的单片机原理图

步进电机加减速定位控制系统的单片机原理图如图3.3所示。[5]

图3.3 步进电机加减速定位系统的单片机原理图

在图3.3中,U1为单片机芯片AT89C51,工作于11.0592MHz的时钟。单片机的P1.2、P1.3、P1.4、P1.5、P1.6、P1.7引脚分别与输入键盘的定位、启动、加速、减速、停止、反转端口相对应。通过判断上述端口来确定输入,以便实现各种要求的控制功能。P3.0接LM016L的RS端,P3.1接RW端,P3.3接使能端EN。P0.0--P0.7通过排阻跟芯片LM016L的数据端连接。P3.3作为外部中断0通过两个反向非门与键盘电路相连接,提供键盘输入的中断信号。P2.0-P2.3作为并行端口来模拟步进电机的控制脉冲,同时充当脉冲分配器的功能,给步进电机提供四相八拍的步进控制脉冲。

3.3 步进电机系统原理图

步进电机控制系统的驱动原理图如图3.4所示。

图3.4 电机控制系统原理图

在电源引脚并联一个0.1uf的小电容目的是1.滤波,引入滤波电容的原因是要获得平滑稳定的电压,因为电容两端的电压不能突变,所以它能抑制电压的波动,使电压变得平稳光滑主要作用有两个:1.去除器件之间的交流射频耦合。它能将器件的电源端上瞬间的尖峰、毛刺对地短路掉。2.去耦:也叫退耦。

芯片L298N的IN1-IN4端跟单片机的P2.0-P2.3端口连接,作为步进电机的四相步进脉冲信号。感应端SENSA和SENSB接地,ENA ENB 端口悬空。输出OUT1-OUT4跟步进电机的四角上的四个端口逆时针依次连接,步进电机

的中间两个端口直接接高电平。8个二极管D1-D8为电机绕组通电后续流作用。VCC接+5V的电源作为控制端的电源电压,VSS接+12V的电压,作为L298N 高压端电压,作为步进电机的驱动电压。

4 软件设计

4.1 AT89C51单片机定时器控制器控制

定时器共有两个控制字,有软件写入TMOD和TCON两个8位寄存器,用来设置两个T0或T1的操作模式和控制功能。当AT89C51系统复位时,连个寄存器所有位都被清零[7]。

4.1.1 工作模式寄存器TOMD

TOMD用于控制T0和T1工作模式,其各位的定义格式如表4.1所示。

表 4.1 工作模式寄存器TMOD的位定义

定时器T1 定时器T0

其中,低四位用于T0,高4位用于T1。

4.1.2 控制寄存器TCON

定时器控制寄存器TCON除可字节寻址外,各位还可位寻址,各位定义及格式如表4.2所示。

表4.2 控制寄存器TCON的位定义

TCON各位的作用如下。

TF1(TCON.7): T1溢出标志位。

TF0(TCON.5): T0溢出标志位。其功能和操作情况同TF1。

TR1(TCON.6): T1运行控制位。可通过软件置1或清0来启动或关闭T1.

在程序中用指令“SETB TR1”使TR1位置1,定时器T1便开始计数。

TR0(TCON.4): T0运行控制位。其功能及操作情况同TR1。

TE1,IT1,IT0(TCON.3~TCON.0):外部中断INT1和INT0请求及请求方式控制位。

89C51复位时,TCON的所有位被清0[7]。

4.2 控制过程软件设计

4.2.1 脉冲分配

实现脉冲分配(也就是通电换相控制)的方法有两种:软件法和硬件法。软件法是完全用软件的方式,按照给定的通电换相顺序,通过单片机的IO向驱动电路发出控制脉冲,设定四相八拍工作方式通电换相得:正序为A-AB-B-BC-C-CD-D-DA,反序为A-AD-D-DC-C-CB-B-BA-A

注:P2.0:A相驱动,P2.1:B相驱动,P2.2:C相驱动,P2.3: D相驱动。

四相八拍控制字如下表4.3所示。

表4.3 四相八拍工作方式的控制字

通过连续的向P2.0-P2.3口输出脉冲,来控制步进电机的连续不断的运行。

4.2.2 加减速定位曲线设定

步进电机驱动执行机构从A点到B点移动的时,要经历升速,恒速,减速过程,如果启动时一次将速度升到给定速度,由于启动频率超过极限启动频率,

步进电机就有失步现象,因此会造成不能正常启动,如果到终点时突然停下来,由于惯性作用,步进电机会发生过冲现象,会造成位置精度降低。如果升速非常缓慢的升降速,步进电机虽然不会发生失步和过冲现象,但影响执行机构的工作效率,所以,对步进电机的加减速要有严格的要求,那就是保证在不失步和过冲的前提下,用最快的速度(或最短的时间)移动到有可能指定位置。为满足加减速要求,步进电动机运行通常按照加减速曲线进行。如图4.1是加减速运行曲线。加减速运行曲线没有一个固定的模式,一般根据经验和实验得到的。最简单的是匀加速和匀减速曲线。

图4.1 加减速曲线

用定时器中断方式来控制电动机变速时,实际上是不断改变定时器装载值的大小。在控制过程中,为了减少每步计算装载值的时间,系统设计时就把各离散点的速度所需的装载值固化在系统的ROM中,这样可大幅度减少占用CPU 的时间,提高系统的响应速度。阶梯模拟加减速曲线如图4.2所示。

50rs 50 rs 40rs 40 rs 30 rs 30 rs 20rs 20 rs 10rs 10 rs

TS 0 2 4 6 8 10 20 22 24 26 28S

图4.2 阶梯模拟加减速曲线

4.3 程序流程图

4.3.1 主程序流程图

主程序主要是实现对系统的资源进行全面的管理,协调的处理系统的显示、键盘输入、和步进电机的循环转动。开定时器和外部中断以及各个变量的初始化,最后循环的执行电机旋转过程并等待外部中断。如图4.3所示。[7]

Y

N

N

Y

Y

图4.3 主程序流程图

4.3.2 外部中断0的中断服务子程序流程图

外部中断0服务程序功能通过中断方式判断端口INT0[9],如果脉冲下降沿就开始检测键盘输入端口P1口,通过与程序中的设定值来进行比较确定是哪个功能键按下,然后再通过固化的各种情况执行对应的中断程序,在启动时候是检测到启动按键时候直接给主程序中循环执行的标志变量赋1直接启动正转程Speed:10r s”当检测到停止键按下时,直接将主程序中循环执行的标志变量赋0,停止单片机向外发送脉冲,并启动显示,“Testing…”在加减速的时候是每检测到一次按键按下时中断程序便开始执行,并与按下按键前的速度状态进行比较确定下一档给出的的速度值即给出主程序中P2口送出脉冲之间的延时时间,并在LCD上显示执行的结果,当按下定位键后,锁定其他的各个按键并且转向定时器T0的中断服务程序,来实现加减速定位的功能。实现键盘控制的各个功能。

2

1

2

1

Y

Y

N

Y

N Y

Y

4

4

4

N

Y

3

4

3

N

Y

Y Y

4

N

Y

图4.4外部中断0服务程序流程图

4.3.3 定时器T0的中断服务程序

当检测到键盘中是定位键按下时,为了实现定位过程中的离散模拟加减速控制,就设置用定时器T0来控制定位过程中步进电机速度的变化,即给单片机P2口发送脉冲的频率,通过设定变化过程中每个速度档的运行时间来控制加减速过程中的加速度的变化,具体过程是步进电机从低速不失步地加速启动,经过5档阶梯加速过程0rs-10rs-20rs-30rs-40rs -50rs达到高速恒速运行

50rs,并且在LCD液晶显示屏幕上实时的显示Locate 900r Speed: 50 rs运行10s后在将达到目标位置时,步进电机减速运行,经过5档阶梯减速

50rs-40rs-30rs-20rs -10rs-0rs最后准确的停在目标位置上,而不会发生过冲现象。定位结束后在LCD液晶显示屏幕上显示“Stopping…” 。并且通过计算定位过程中的各个速度段的时间累积和来确定总的定位步数,达到准确定位的目的,并且在定位的执行过程中锁定了其他的加减速等按键,确保了定位过程的正确执行。

5 仿真过程

KeilC与Proteus连接仿真调试[8]

Proteus里加载可执行文件,左键双击AT89C52原理图,点击加载可执行文件“步进电机.HEX”。

单击仿真运行开始按钮,我们能清楚地观察到每一个引脚的电频变化,红色代表高电频,蓝色代表低电频。其运行情况如图5.1-5.4所示。

图5.1 定位加速过程

图5.2 正转加速

图5.3 反转减速

图5.4 定位结束过程

总结

步进电动机是一种将脉冲信号变换成相应的角位移(或线位移)的电磁装置,是一种特殊的电动机。由于其精确性以及其良好的性能在实际当中得到了广泛的应用。本文介绍了以51系列单片机AT89C51为控制核心所设计的步进电机控制系统,从系统的硬件电路以及软件的设计方面实现了对步进电机的控制。

本文首先对步进电机进行了概述,然后就控制系统中芯片的选取做了详细的说明,本设计选择用L298N作为接口驱动芯片,用LM016L做显示芯片,在Proteus上设计出控制系统的硬件连接电路,并根据实情况考虑了电磁隔离和绕组的导通续流等。在硬件设计的基础上设计了系统运行过程的程序流程图并用C程序设计出控制系统的控制程序,并用Keil进行调试,然后在Proteus 上进行仿真,实现了本次设计所需的各种功能。系统中采用并行控制,用单片机接口线直接去控制步进电机各相驱动线路。键盘作为一个外部中断源,设置了步进电机正转、反转、加减速、停止等功能,采用中断方法来调用中断服务程序,

完成对步进电机的最佳控制,显示器及时显示正转、反转速度等状态,并且用定

时器控制定位过程,在定位过程中简单设置了加减速过程的模拟阶梯曲线,来控制加减速的整个过程。

该设计的唯一不足是固化的加减速过程中的加减速时间,不能通用于各种不同的加速度控制系统,且在定位过程中由于脉冲漏发等出现小偏差时候不能进行检测,所以还有待进一步的将该系统完善成为具有传感器位置检测的闭环控制系统。

用软件代替环形分配器,通过对单片机的设定,用同一种电路实现了多相步进电机的控制和驱动,大大提高了接口电路的灵活性和通用性;本次设计虽然只是实现单一功能的应用,但是它可以作为一种通用模块应用,通过改变并行输出口可以满足多种不同的相数的步进电机控制,改变模拟阶梯曲线的参数可以满足多种不同应用条件下的定位。随着微电子和计算机技术的发展,步进电机的需求量与日俱增,在各个国民经济领域中发挥这不可替代的作用。

致谢

这次的课程设计终于顺利完成了,在设计中遇到了很多问题,在理解及设计课题过程中得到老师的细心指导,得到很多实用的知识,在此我表示感谢!同时,对给过我帮助的所有同学和各位指导老师再次表示衷心的感谢

参考文献

[1]吴显鼎.模拟电子技术[M].南开大学出版社,2010年版

[2]蒋华勤.电子技术基础实验[M].北京:中国计量出版社,2009年版.

[3]宋家友,乐丽琴.数字电子技术[M].哈尔滨:哈尔滨工程大学出版社,2011年版.

[4]王质朴,吕云朋.MCS-51单片机原理接口及应用[M].北京:北京理工大学

出版社,2009年版.

[5]邱关源,罗先觉.电路[M]第五版.北京市:高等教育出版社,2006年6月版.

[6]孙建明,杨清梅.传感器技术[M].北京:清华大学出版社,2005年10月版

[7] 史敬灼.步进电动机伺服控制技术[M].北京:科学出版社,2006.7

[8] 林庭双,柯常志. 等protel DXP 电子电路设计精彩范例[M].北京:机械工业出版社,2005.1

[9]王晓明.电动机的单片机控制[M].北京:北京航空航天出版社,2002.5.

相关文档
相关文档 最新文档