单片机的步进电机控制器的设计论文.docx

上传人:b****5 文档编号:6104431 上传时间:2023-01-03 格式:DOCX 页数:30 大小:536.18KB
下载 相关 举报
单片机的步进电机控制器的设计论文.docx_第1页
第1页 / 共30页
单片机的步进电机控制器的设计论文.docx_第2页
第2页 / 共30页
单片机的步进电机控制器的设计论文.docx_第3页
第3页 / 共30页
单片机的步进电机控制器的设计论文.docx_第4页
第4页 / 共30页
单片机的步进电机控制器的设计论文.docx_第5页
第5页 / 共30页
点击查看更多>>
下载资源
资源描述

单片机的步进电机控制器的设计论文.docx

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

单片机的步进电机控制器的设计论文.docx

单片机的步进电机控制器的设计论文

摘要

介绍了步进电动机的发展史,及国内的现状和步进电动机未来的应用前景。

并且阐述了步进电动机转速、角度、转矩的控制原理。

本文阐述了一种步进电机控制器的设计方案,并绘制了原理图和PCB板图,撰写了程序源代码。

实现了对步进电动机转速、角度的控制,并完成了实物的制作。

这期间主要使用protel99se软件绘制原理图和制板,使用proteus7.1软件进行程序代码的仿真和功能的理论验证。

最后通过硬件的调试验证程序代码的实际功能,完成对控制器的设计。

关键词:

步进电动机;控制器。

Abstract

Introductionstepenterelectricmotorofdevelopmenthistory,andlocalpresentconditionandstepenterelectricmotorfutureofapplicationforeground.Andelaboratedasteptoenterelectricmotortoturnsoon,angle,turnJuofcontrolprinciple.Thistextelaboratedakindofstepenterelectricalengineeringcontrollerofdesignproject,anddrewprinciplediagramandPCBplankdiagram,composedaproceduresourceacode.Realizationtostepentertheelectricmotorturnsoon,angleofcontrol,andcompletionrealobjectofcreation.Thisperiodmainusagetheprotel99sethesoftwaredrawprinciplediagramandmakeplank,usageproteus7.1softwarescarryonanimitateofprocedurecodetruewiththetheoriesofthefunctionverification.Theendexperimentcertificateprocedureacodethroughanadjustofhardwareofactualfunction,completiondesigncontroller.

Keywords

StepperMotor;Controller.

第一章、引言

1.1步进电机发展史

步进电机又称电动机或阶跃电动机,国外一般称为Stepmotor或Steppingmotor等。

步进电机的机理是基于最基本的电磁铁作用,其原始模型起源于1830年至1860年间。

1870年前后开始以控制为目的的尝试,应用于氩弧灯的电极输送机构中。

这被认为是最初的步进电动。

此后,在电话自动交换机中广泛使用了步进电动机。

不久又在缺乏交流电源的船舶和飞机等独立系统中广泛使用。

20世纪60年代后期,随着永磁性材料的发展,各种实用性步进电动机应运而生,而半导体技术的发展则推进了步进电动机在众多领域的应用。

在近30年间,步进电动机迅速地发展并成熟起来。

从发展趋向来讲,步进电动机已经能与直流电动机、异步电动机,以及同步电动机并列,从而成为电动机的一种基本类型。

1.2我国步进电机发展

我国步进电动机的研究及制造起始于本世纪50年代后期。

从50年代后期到60年代后期,主要是高等院校和科研机构为研究一些装置而使用或开发少量产品。

这些产品以多段结构三相反应式步进电动机为主。

70年代初期,步进电动机的生产和研究有所突破。

除反映在驱动器设计方面的长足进步外,对反应式步进电动机本体的设计研究发展到一个较高水平。

70年代中期至80年代中期为成品发展阶段,新品种高性能电动机不断被开发。

自80年代中期以来,由于对步进电动机精确模型做了大量研究工作,各种混合式步进电动机及驱动器作为产品广泛利用。

1.3步进电机的应用前景

目前,随着电子技术、控制技术以及电动机本体的发展和变化,传统电机分类间的界面越来越模糊。

步进电机必然会成为机电一体化元件组件的必然趋势。

由于步进电机具有控制方便、体积小等特点,所以在数控系统、自动生产线、自动化仪表、绘图机和计算机外围设备中得到广泛应用。

微电子学的迅速发展和微型计算机的普及与应用,为步进电动机的应用开辟了广阔前景,使得以往用硬件电路构成的庞大复杂的控制器得以用软件实现,既降低了硬件成本又提高了控制的灵活性,可靠性及多功能性。

市场上有很多现成的步进电机控制机构,但价格都偏高。

应用SGS公司推出的L297和L298两芯片可方便的组成步进电机驱动器,并结合Atmega16L单片机可以构成很好的步进电机控制系统。

第2章 步进电机概述

2.1 步进电机的分类

步进电动机的种类很多,从广义上讲,步进电机的类型分为机械式、电磁式和组合式三大类型。

按结构特点电磁式步进电机可分为反应式(VR)、永磁式(PM)和混合式(HB)三大类;按相数分则可分为单相、两相和多相三种。

目前使用最为广泛的为反应式和混合式步进电机[7]。

(1)反应式步进电机(VariableReluctance,简称VR)反应式步进电机的转子是由软磁材料制成的,转子中没有绕组。

它的结构简单,成本低,步距角可以做得很小,但动态性能较差。

反应式步进电机有单段式和多段式两种类型;

(2)永磁式步进电机(PermanentMagnet,简称PM)永磁式步进电机的转子是用永磁材料制成的,转子本身就是一个磁源。

转子的极数和定子的极数相同,所以一般步距角比较大。

它输出转矩大,动态性能好,消耗功率小(相比反应式),但启动运行频率较低,还需要正负脉冲供电;

(3)混合式步进电机(Hybrid,简称HB)混合式步进电机综合了反应式和永磁式两者的优点。

混合式与传统的反应式相比,结构上转子加有永磁体,以提供软磁材料的工作点,而定子激磁只需提供变化的磁场而不必提供磁材料工作点的耗能,因此该电机效率高,电流小,发热低。

因永磁体的存在,该电机具有较强的反电势,其自身阻尼作用比较好,使其在运转过程中比较平稳、噪声低、低频振动小。

这种电动机最初是作为一种低速驱动用的交流同步机设计的,后来发现如果各相绕组通以脉冲电流,这种电动机也能做步进增量运动。

由于能够开环运行以及控制系统比较简单,因此这种电机在工业领域中得到广泛应用。

由于本设计的设计目的更注重整个系统的有机结合,所以只采用反应式步进电机[7]。

 

2.2 步进电机的工作原理

2.2.1 结构及基本原理

步进电机在结构上也是由定子和转子组成,可以对旋转角度和转动速度进行高精度控制。

当电流流过定子绕组时,定子绕组产生一矢量磁场,该矢量场会带动转子旋转一角度,使得转子的一对磁极磁场方向与定子的磁场方向一着该磁场旋转一个角度。

因此,控制电机转子旋转实际上就是以一定的规律控制定子绕组的电流来产生旋转的磁场。

每来一个脉冲电压,转子就旋转一个步距角,称为一步。

根据电压脉冲的分配方式,步进电机各相绕组的电流轮流切换,在供给连续脉冲时,就能一步一步地连续转动,从而使电机旋转。

电机将电能转换成机械能,步进电机将电脉冲转换成特定的旋转运动。

每个脉冲所产生的运动是精确的,并可重复,这就是步进电机为什么在定位应用中如此有效的原因。

通过电磁感应定律我们很容易知道激励一个线圈绕组将产生一个电磁场,分为北极和南极,见图2.1所示。

定子产生的磁场使转子转动到与定子磁场对直。

通过改变定子线圈的通电顺序可使电机转子产生连续的旋转运动。

图2.1 激励线圈产生电磁场

2.2.2 两相电机的步进顺序

1、两相电机的单相通电步进顺序

在图2.2中我们很清晰的展示了在单相通电时一个两相步进电机的典型的步进顺序。

在第1步中,两相定子的A相通电,因异性相吸,其磁场将转子固定在图示位置。

当A相关闭、B相通电时,转子顺时针旋转90°。

在第3步中,B相关闭、A相通电,但极性与第1步相反,这促使转子再次旋转90°。

在第4步中,A相关闭、B相通电,极性与第2步相反。

重复该顺序促使转子按90°的步距角顺时针旋转[8][9]。

图2.2 两相电机的单相通电步进顺序

2、两相电机的双相通电步进顺序

图2.2中显示的步进顺序称为“单相激励”步进。

更常用的步进方法是“双相激励”,其中电机的两相一直通电。

但是,一次只能转换一相的极性,见图2.3所示。

在第1步中,两相定子的A相和B相同时通电,因异性相吸,再加上力的相互作用关系,其磁场将转子固定在图示step1位置。

在第2步中,两相定子的A相关闭,而B和a相(此时的a相通电极性与第1步A相反)同时通电,因异性相吸,再加上力的相互作用关系,其磁场将转子固定在图示step2位置。

在第3步中,两相定子的a相和b相同时通电,因异性相吸,再加上力的相互作用关系,其磁场将转子固定在图示step3位置。

在第4步中,两相定子的b相和A相同时通电,因异性相吸,再加上力的相互作用关系,其磁场将转子固定在图示step4位置。

按照这样的通电方式电机就转过了一周[8][9]。

两相步进时,转子与定子两相之间的轴线处对直。

由于两相一直通电,本方法比“单相通电”步进多提供了41.1%的力矩,但输入功率却为2倍。

图2.3 两相电机的双相通电步进顺序

3、步进电机的半步工作方式

电机也可在转换相位之间插入一个关闭状态而走“半步”。

这将步进电机的整个步距角一分为二。

例如,一个90°的步进电机将每半步移动45°,见图2.4。

但是,与“两相通电”相比,半步进通常导致15%~30%的力矩损失(取决于步进速率)。

在每交换半步的过程中,由于其中一个绕组没有通电,所以作用在转子上的电磁力要小,造成了力矩的净损失。

从原理图我们很容易看到半步工作方式其实就是将两相电机的单相通电工作方式和两相电机的双相通电工作方式相互结合起来。

两相步进电机的工作模式有两相四拍和两相八拍等两种,其中我们在图2.2和图2.3中展示的都叫做两相四拍工作模式,而下面的2.4图展示的就是两相八拍工作模式[8][9]。

图2.4 两相电机的半步步进顺序

2.3步进电机的工作特点

本设计选用了型号为42BYG型的感应子式步进电机,它与传统的反应式步进电机相比结构上转子加有永磁体,以提供软磁材料的工作点,而定子激磁只需提供变化的磁场而不必提供磁材料工作点的耗能,因此该电机效率高,电流小,发热低。

因永磁体的存在,该电机具有较强的反电势,其自身阻尼作用比较好,使其在运转过程中比较平稳、噪音低、低频振动小。

就目前步进电机的应用情况来说,步进电机的自身特点具体归纳起来有[10]:

(1)电机必须加驱动才可以运转,驱动信号必须为脉冲信号,没有脉冲的时候步进电机静止,如果加入适当的脉冲信号,步进电机就会以一定的角度(称为步角)转动。

转动的速度和脉冲的频率成正比。

(2)步进电机具有瞬间启动和急速停止的优越特性。

(3)改变驱动器输入脉冲的顺序,可以方便的改变电机的转动方向。

(4)位移与输入脉冲信号数相对应,步距误差不长期积累,可以组成结构较为简单而又具有一定精度的开环控制系统,也可以要求更高精度时组成闭环控制系。

(5)电机停止转动的时候具有自锁功能。

(6)步距角选择范围大,可在几十角分至180度大范围内选择。

在小步距情况下,通常可以在越低速下以高转矩运行,因而可以不经减速器直接驱动负载工作。

(7)步进电机不能使用普通的交流电源驱动。

(8)一般步进电机的精度是步进角的3%~5%,且步距误差不会长期积累。

(9)步进电机的力矩会随转速的升高而下降:

当步进电机转动时,电机各相绕组的电感将形成一个反向电动势;频率越高,反向电动势越大。

在它的作用下,电机随频率(或速度)的增大而相电流减小,从而导致力矩下降。

(10)步进电机低速时可以正常运转,但若高于一定频率就无法启动,并伴有啸叫声.步进电机有一个技术参数:

空载启动频率,即步进电机在空载情况下能够正常启动的脉冲频率,如果脉冲频率高于该值,电机不能正常启动,可能发生丢步或堵转。

在有负载的情况下,启动频率应更低。

如果要使电机达到高速转动,脉冲频率应该有加速过程,即启动频率较低,然后按一定加速度升到所希望的高频(电机转速从低速升到高速)。

第3章 系统的硬件设计

3.1 系统设计方案

3.1.1 系统的方案简述与设计要求

本设计采用单片机AT89S51来作为整个步进电机控制系统的运动控制核心部件,采用了电机驱动芯片L298及其外围电路构成了整个系统的驱动部分,再加上作为执行部件的步进电机来构成了一个基本的步进电机控制系统。

系统的具体功能和要求如下:

1.单片机最小系统板的设计;

2.设计兼有两相两拍和两相四拍的脉冲分配器;

3.实现步进电机的启停、正转、反转控制;

4.驱动电路可提供电压为12V,电流为0.3A的驱动信号;

5.能实现步进电机的转速调节,最低转速为25转/分,最高转速为100转/分;

6.步进电机的转速由数码管显示;

7.键盘扫描电路的设计

3.1.2 系统的组成及其对应功能简述

整个系统的组成包括单片机最小系统,电机驱动模块,串口下载模块,数码管显示模块,电机驱动电流检测模块,独立按键等模块组成。

具体框图如图3.1所示:

图3.1 系统总体框图

单片机最小系统作为整个系统的控制核心,它主要负责产生控制步进电机转动的脉冲,通过单片机的软件编程代替环形脉冲分配器输出控制步进电机的脉冲信号,步进电机转动的角度大小与单片机输出的脉冲数成正比步进电机转动的速度与输出的脉冲频率成正比,而步进电机转动的的方向与输出的脉冲顺序有关。

同时单片机系统还负责处理来自电机驱动电流检测模块检测到的电流值。

与此同时,单片机将会把电机转速,电机的转动方向,以及电流检测模块检测到的电机驱动的电流通过数码管显示出来。

电机驱动模块负责将单片机发给步进电机的信号功率放大,从而驱动电机工作。

串口下载模块主要是负责实行计算机和单片机之间的通信,将在计算机里面编写好的程序下载到单片机芯片当中。

数码管显示模块就主要是显示电机转速,电机转向,和通过电机的电流等系统的实时信息。

电机驱动电流检测模块主要是检测通过电机驱动芯片的电流,然后通过运放将检测到的信号放大,最后将放大后的信号通过模数转换芯片ADC0804处理后送给单片机。

独立按键作为一个外部中断源,和单片机端口连接,通过它设置了电机的正转,反转,加速,减速,显示电机电流等功能。

采用了中断和查询相结合的方法来调用中断服务程序,完成了对步进电机的最佳的及时的控制。

本节主要是在第一章和第二章的基础上引出了本论文将要采用的设计方案,并详细的清楚的一条条列出了设计要实现的基本设计要求。

然后是基于我的设计方案,比较简单的但有条理的描述了系统的各个部分的组成以及其对应的基本功能。

通过这一章的内容,我们能对本设计有一个简单的总体的把握,既是能清楚的知道本题目的设计内容,设计方法,以及最终的预期目标。

3.2 单片机最小系统

3.2.1 AT89S51简介

AT89S51是美国ATMEL公司生产的低功耗,高性能CMOS8位单片机,片内含4kbytes的可系统编程的Flash只读程序存储器,器件采用ATMEL公司的高密度、非易失性存储技术生产,兼容标准8051指令系统及引脚。

它集Flash程序存储器既可在线编程(ISP)也可用传统方法进行编程及通用8位微处理器于单片芯片中,功能强大。

1、主要性能参数

·与MCS-51产品指令系统完全兼容

·4k字节在系统编程(ISP)Flash闪速存储器

·1000次擦写周期

·5.0-5.5V的工作电压范围

·全静态工作模式:

0Hz-50MHz

·三级程序加密锁

·128×8字节内部RAM

·32个可编程I/O口线

·2个16位定时/计数器

·6个中断源

·全双工串行UART通道

·低功耗空闲和掉电模式

·中断可从空闲模唤醒系统

·看门狗(WDT)及双数据指针

·掉电标识和快速编程特性

·灵活的在系统编程(ISP字节或页写模式)

2、功能特性概述

AT89S51提供以下标准功能:

4k字节Flash闪速存储器,128字节内部RAM,32个I/O口线,看门狗(WDT),两个数据指针,两个16位定时/计数器,一个5向量两级中断结构,一个全双工串行通信口,片内振荡器及时钟电路。

同时,AT89S51可降至0Hz的静态逻辑操作,并支持两种软件可选的节电工作模式。

空闲方式停止CPU的工作,但允许RAM,定时/计数器,串行通信口及中断系统继续工作。

掉电方式保存RAM的内容,但振荡器停止工作并禁止其它所有部件工作直到下一个硬件复位。

3、引脚功能说明

 

图3.2 AT89S51

该设计使用到的单片机芯片对应管脚名称位置等如图3.2的引脚功能图详细说明。

·VCC:

电源电压

·GND:

·P0口:

P0口是一组8位漏极开路型双向I/0口,也即地址/数据总线复用口。

作为输出口用时,每位能驱动8个TTL逻辑门电路,对端口写“l”可作为高阻抗输入端用。

在和数据总线复用,在访问期间激活内部上拉电阻。

在F1ash编程时,P0口接收指令字节,而在程序校验时,输出指令字节,校验时,要求外接上拉电阻。

访问外部数据存储器或程序存储器时,这组口线分时转换地址(低8位)。

·P1口:

Pl是一个带内部上拉电阻的8位双向I/O口,Pl的输出缓冲级可驱动(吸收或输出电流)4个TTL逻辑门电路。

对端口写“l”,通过内部的上拉电阻把端口拉到高电平,此时可作输入口。

作输入口使用时,因为内部存在上拉电阻,某个引脚被外部信号拉低时会输出一个电流(IIL)。

·P2口:

P2是一个带内部上拉电阻的8位双向I/O口,P2的输出缓冲级可驱动(吸收或输出电流)4个TTL逻辑门电路。

对端口写“1”,通过内部的上拉电阻把端口拉到高电平,此时可作输入口,作输入口使用时,因为内部存在上拉电阻,某个引脚被外部信号拉低时会输出一个电流(IIL)。

在访问外部程序存储器或16位地址的外部数据存储器(例如执行MOVX@DPTR指令)时,P2口送出高8位地址数据。

在访问8位地址的外部数据存储器(如执行MOVX@Ri指令)时,P2口线上的内容(也即特殊功能寄存器(SFR)区P2寄存器的内容),在整个访问期间不改变。

Flash编程或校验时,P2亦接收高位地址和其它控制信号。

·P3口:

P3口是一组带有内部上拉电阻的8位双向I/O口。

P3口输出缓冲级可驱动(吸收或输出电流)4个TTL逻辑门电路。

对P3口写入“l”时,它们被内部上拉电阻拉高并可作为输入端口。

作输入端时,被外部拉低的P3口将用上拉电阻输出电流(IIL)。

P3口除了作为一般的I/O口线外,更重要的用途是它的第二功能,如下表所示:

P3口还接收一些用于Flash闪速存储器编程和程序校验的控制信号。

具体功能如表3.1所示

表3.1 P3口的引脚及功能

端口引脚

第二功能

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(外部数据存储器读选通)

·RST:

复位输入。

当振荡器工作时,RST引脚出现两个机器周期以上高电平将使单片机复位。

WDT溢出将使该引脚输出高电平,设置SFRAUXR的DISRT0位(地址8EH)可打开或关闭该功能。

DISRT0位缺为RESET输出高电平打开状态。

·ALE/PROG:

当访问外部程序存储器或数据存储器时,ALE(地址锁存允许)输出脉冲用于锁存地址的低8位字节。

即使不访问外部存储器,ALE仍以时钟振荡频率的1/6输出固定的正脉冲信号,因此它可对外输出时钟或用于定时目的。

要注意的是:

每当访问外部数据存储器时将跳过一个ALE脉冲。

对F1ash存储器编程期间,该引脚还用于输入编程脉冲(PROG)。

如必要,可通过对特殊功能寄存器(SFR)区中的8EH单元的D0位置位,可禁止ALE操作。

该位置位后,只一条M0VX和M0VC指令ALE才会被激活。

此外,该引脚会被微弱拉高,单片机执行外部程序时,应设置ALE无效。

·PSEN:

程序储存允许(PSEN)输出是外部程序存储器的读选通信号,当AT89S51由外部程序存储器取指令(或数据)时,每个机器周期两次PSEN有效,即输出两个脉冲。

当访问外部数据存储器,没有两次有效的PSEN信号。

·EA/VPP:

外部访问允许。

欲使CPU仅访问外部程序存储器(地址为0000H-FFFFH),EA端必须保持低电平(接地)。

需注意的是:

如果加密位LB1被编程,复位时内部会锁存EA端状态。

如EA端为高电平(接Vcc端),CPU则执行内部程序存储器中的指令。

F1ash存储器编程时,该引脚加上+12V的编程电压Vpp。

·XTALl:

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

·XTAL2:

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

·存储器结构:

MCS-51单片机内核采用程序存储器和数据存储器空间分开的结构,均具64KB外部程序和数据的寻址空间。

·程序存储器:

如果EA引脚接地(GND),全部程序均执行外部存储器。

在AT89S51,假如EA接至Vcc(电源+),程序首先执行地址从0000H-0FFFH(4KB)内部程序存储器,再执行地址为1000H-FFFFH(60KB)的外部程序存储器。

·数据存储器:

AT89S51的具128字节的内部RAM,这128字节可利用直接或间接寻址方式访问,堆栈操作可利用间接寻址方式进行,128字节均可设置为堆栈区空间。

4、晶体振荡器特性

AT89S51一个用于构成内部振荡器的高增益反相放大器,引脚XTAL1和XTAL2分别是该放大器的输入端和输出端。

这个放大器与作为反馈元件的片外石英晶体或陶瓷谐振器一起构成自激振荡器。

外接石英晶体(或陶瓷谐振器)及电容Cl、C2接在放大器的反馈回路构成并联振荡电路。

对外接电容Cl、C2虽然没十分严格的要求,但电容容量的大小会轻微影响振荡频率的高低、振荡器工作的稳定性、起振的难易程序及温度稳定性。

如果使用石英晶体,我们推荐电容使用30pF±10pF,而如使用陶瓷谐振器建议选择40pF±10pF。

用户也可以采用外部时钟。

这种情况下,外部时钟脉冲接到XTAL1端,即内部时钟发生器的输入端,XTAL2则悬空。

由于外部时钟信号是通过一个2分频触发器后作为内部时钟信号的,所以对外部时钟信号的占空比没有特殊要求,但最小高电平持续时间和最大的低电平持续时间应符合产品技术条件的要求。

5、Flash闪速存储器的并行编程

AT89s51单片机内部4k字节的可快速编程的Flash存储阵列。

编程方法可通过传统的EPROM编程器使用高电压(+12V)和协调的控制信号进行编程。

AT89S51的代码是逐一字节进行编程的。

编程方法:

编程前,须设置好地址、数据及控制信号,AT89S51编程方法如下:

1.在地址线上加上要编程单元的地址信号。

2.在数据线上加上要写

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

当前位置:首页 > 求职职场 > 简历

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

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