基于51单片机步进电机的设计Word文件下载.docx
- 文档编号:4424173
- 上传时间:2023-05-03
- 格式:DOCX
- 页数:15
- 大小:283.72KB
基于51单片机步进电机的设计Word文件下载.docx
《基于51单片机步进电机的设计Word文件下载.docx》由会员分享,可在线阅读,更多相关《基于51单片机步进电机的设计Word文件下载.docx(15页珍藏版)》请在冰点文库上搜索。
4.4外部中断设计…………………………………………19
仿真与调试……………………………………………25
5.1Proteus软件介绍……………………………………25
心得体会……………………………………………………………27
基于单片机的电机调速控制器设计
概述
能够实现步进电机控制的方式有多种,可以采用前期的模拟电路、数字电路或模拟与数字电路相结合的方式。
近年来随着科技的飞速发展,单片机的应用正在不断深入,同时带动传统控制检测日新月异更新。
本文介绍一种用AT89C51作为核心部件进行逻辑控制及信号产生的单片机技术和汇编语言编程设计的电机控制系统,电机背景与现状、硬件设计、软件设计及其仿真都做了详细的介绍,使我们不仅对步进电机的原理有了深入的了解,也对单片机的设计研发过程有了更加深刻的体会。
本控制系统采用单片机控制,通过人为按动开关实现电机的开关,复位。
该系统还增加了步进电机的加速及减速功能。
具有灵活方便、适用范围广的特点,基本能够满足实践需求。
关键字:
步进电机单片机
Abstract
Steppermotorcontrolcanbeachievedindifferentways,canbeusedearlyanalogcircuits,digitalcircuitsoracombinationofanaloganddigitalcircuitmeans.Withtherapiddevelopmentofscienceandtechnologyinrecentyears,theapplicationofSCMisagrowing,whiletraditionalcontroltestdriverapidupdates.ThispaperdescribesacorecomponentoftheAT89C51,asthesignalgeneratedbylogiccontrolandmicrocontrollertechnologyandassemblylanguageprogrammingdesignedsteppermotorcontrolsystem,steppingmotorbackgroundandpresent,hardwaredesign,softwaredesignandsimulationhavemadeadetailedintroduction,sowenotonlyhaveasteppermotor-depthunderstandingoftheprinciples,butalsothedesignofmicrocontrollerdevelopmentprocesshaveamoreprofoundexperience.
ThecontrolsystemusesSCMcontrol,pressingtheswitchthroughtherealizationofhumansteppermotorswitch,reset.Thesystemalsoincreasedthesteppermotoraccelerationanddeceleration.Hastheflexibilityforawiderangeoffeatures,thebasicpracticetomeetthedemand.
Keywords:
steppermotormicrocontroller
课题要求
要求以AT89C51单片机为主控制器,设计一个点击的脉宽调速器,设置键盘或开关。
改变脉冲占空比,用以实现对电机的控制,包括电机转速的高低变化,正反向转动和用三位数码显示器显示电机的的转速。
仪器与介绍
1.电机
步进电机是数字控制电机,它将脉冲信号转变成角位移,即给一个脉冲信号,步进电机就转动一个角度,因此非常适合于单片机控制。
步进电机区别于其他控制电机的最大特点是:
它是通过输入脉冲信号来进行控制的,即电机的总转动角度由输入脉冲数决定,而电机的转速由脉冲信号频率决定。
这是本次选择使用步进电机的主要原因。
基本结构如下:
步进电机的静态指标及术语:
相数:
产生不同队N、S磁场的激磁线圈对数,常用m表示。
拍数:
完成一个磁场周期性变化所需脉冲用n表示,或指电机转过一个齿距角所需脉冲数,以四相电机为例,有四相四拍运行方式即AB→BC→CD→DA→AB,四相八拍运行方式即A→AB→B→BC→C→CD→D→DA→A。
步距角:
对应一个脉冲信号,电机转子转过的角位移用θ表示。
Θ=360度(转子齿角运行拍数),以常规二、四相,转子齿角为50齿角电机为例。
四相运行时步距角为θ=360度/(50*4)=1.8度,八拍运行时步距角为θ=360度/(50*8)=0.9度。
定位转矩:
电机在不通电的状态下,电机转子自身的锁定力矩(由磁场齿形的谐波以及机械误差造成的)。
静转矩:
电机在额定静态作业下,电机不做旋转运动时,电机转轴的锁定力矩。
此力矩是衡量电机体积的标准,与驱动电压及驱动电源等无关。
虽然静态转矩与电磁激磁匝数成正比,与定子和转子间的气隙有关。
但过分采用减小气隙,增加励磁匝数来提高静转矩是不可取的,这样会造成电机的发热及机械噪声。
它有如下几类:
永磁式步进电机
永磁式步进电机一般为两相,转矩和体积较小,步进角一般为7.5度或15度;
永磁式步进电动机输出力矩大,动态性能好,但步距角大。
反应式步进电机
反应式步进电机一般为三相,可实现大转矩输出,步进角一般为1.5度,但噪声和振动都很大。
反应式步进电机的转子磁路由软磁材料制成,定子上有多相励磁绕组,利用磁导的变化产生转矩。
反应式步进电动机结构简单,生产成本低,步距角小;
但动态性能差。
混合式步进电机
混合式步进电动机综合了反应式、永磁式步进电动机两者的优点,它的步距角小,出力大,动态性能好,是目前性能最高的步进电动机。
它有时也称作永磁感应子式步进电动机。
它又分为两相和五相:
两相步进角一般为1.8度而五相步进角一般为0.72度。
这种步进电机的应用最为广泛。
所以本次选择运用该类步进电动机。
。
89C51单片机
Atmel公司生产的89C51单片机是一种低功耗/低电压‘高性能的8位单片机,它采用CMOS和高密度非易失性存储技术,而且其输出引脚和指令系统都与MCS-51兼容;
片内的FlashROM允许在系统内改编程序或用常规的非易失性编程器来编程,内部除CPU外,还包括256字节RAM,4个8位并行I/O口,5个中断源,2个中断优先级,2个16位可编程定时计数器,89C51单片机是一种功能强、灵活性高且价格合理的单片机,完全满足本系统设计需要。
硬件设计
总体方案
本设计的硬件电路只要包括控制电路、最小系统、驱动电路、显示电路四大部分。
最小系统只要是为了使单片机正常工作。
控制电路只要由开关和按键组成,由操作者根据相应的工作需要进行操作。
显示电路主要是为了显示电机的工作状态和转速。
驱动电路主要是对单片机输出的脉冲进行功率放大,从而驱动电机转动。
模块设计
控制电路
根据系统的控制要求,控制输入部分设置反向控制,正向控制,加速控制和减速控制按钮,分别是K1、K2、S2、S3,控制电路如图2所示。
通过K1、K2状态变化来实现电机的换向功能。
当K1、K2的状态变化时,内部程序检测P1.0和P1.1的状态来调用相应的换向程序,发现系统的电机的正反转控制。
该设计采用了20BY-0型步进电机,该电机为四相步进电机,采用单极性直流电源供电。
只要对步进电机的各相绕组按合适的时序通电,就能使步进电机转动。
当某一相绕组通电时,对应的磁极产生磁场,并与转子形成磁路,这时,如果定子和转子的小齿没有对齐,在磁场的作用下,由于磁通具有力图走磁阻最小路径的特点,则转子将转动一定的角度,使转子与定子的齿相互对齐,由此可见,错齿是促使电机旋转的原因。
目前,对步进电机的转动方向控制主要是通过调节脉冲相序来实现的。
有硬件控制和软件控制两种方式。
硬件控制利用分散器件组成的环形脉冲分配器和专用集成芯片环形脉冲分配器实现功能。
本设计利用单片机进行控制,主要是利用软件进行环形脉冲分配。
这样使得电路简单和经济。
四相步进电机的工作方式为四相单四拍,双四拍和四相八拍工作的方式。
本设计的电机工作方式为四相单四拍,根据步进电机的工作的时序和波形图,总结出其工作方式为四相单四拍时的脉冲分配规律,四相双四拍的脉冲分配规律,在每一种工作方式中,脉冲的频率越高,其转速就越快,但脉冲频率高到一定程度,步进电机跟不上频率的变化后电机会出现失步现象,所以脉冲频率一定要控制在步进电机允许的范围内。
根据步进电机的工作原理可以知道,步进电机转速的控制主要是通过控制通入电机的脉冲频率,从而控制电机的转速。
对于单片机而言,主要的方法有:
软件延时和定时中断在此电路中电机的转速控制主要是通过定时器的中断来实现的,该电路控制电机加减速主要是通过S2、S3的断开和闭合,从而控制外部中断根据按键次数,改变速度值存储区中的数据(该数据为定时器的中断次数),这样就改变了步进电机的输出脉冲频率,从而改变了电机的转速。
最小系统
单片机最小系统或者称为最小应用系统,素质用最少的元件组成的单片机可以工作的系统,对C51系列单片机来说,最小系统一般应该包括:
单片机、复位电路、晶振电路。
复位电路:
使用了独立式键盘,单片机的P1口键盘的接口。
该设计要求只需4个键对步进电机的状态进行控制。
复位电路采用手动复位,所谓手动复位,是指通过接通一按钮开关,使单片机进入复位状态,晶振电路用330PF的电容和一12M晶体振荡器组成为整个电路提供时钟频率。
晶振电路:
C51单片机的时钟信号通常用两种电路形式电路得到:
内部震荡方式和外部中断方式。
在引脚XTAL1和XTAL2外部接晶振电路器(简称晶振)或陶瓷晶振器,就构成了内部晶振方式。
由于单片机内部有一个高增益反相放大器,当外接晶振后,就构成了自激振荡器并产生振荡时钟脉冲。
其电容值一般在5~30pf,晶振频率的典型值为12MHz,采用6MHz的情况也比较多。
内部振荡方式所得的时钟信号比较稳定,实用电路实用较多。
驱动电路
通过L297和L298构成驱动电路,电路图如图4所示。
通过单片机的P0.0~P0.1输出脉冲到L297的17,18脚,经信号放大后从L298的out1,out2,out3和out4分别输出到电机的A、B、C、D相。
显示电路
在该步进电机的控制器中,电机可以正反转,可以加速、减速,其中电机转速的等级分为七级,为了方便知道电机的运行状态和电机的转速的等级,这里设计了电机转速和电机的工作状态的显示电路。
在显示电路中,主要是利用了单片机的P1口和P2口。
采用两个共阳数码管作显示。
第一个数码管接的a、b、c、d、e、f、g、h分别接P1.0~P1.7口,用于显示电机正反转状态,正转时显示“1”,反转时显示“一”,不转时显示“0”。
第二个数码管的a、b、c、d、e、f、g、h分别接P2.0~P2.7口,用于显示电机的转速级别,共七级,即从1~7转速依次递增,“0”表示转速为零。
软件设计
方案论证
从设计要求可知,该系统的输入量为速度和方向,速度应该有增减变化,通常用加减按钮控制速度,这样只要2根口线,再加上两根正反方向线共需要4根输入线。
系统的输出线与步进电机的绕组数有关。
这里选四相步进电机,该电机共有四个绕组,工作电压为+5V,可以和单片机共用一个电源。
步进电机的四相绕组用P1口的P0.0~P0.1控制,由于P0口驱动能力不够,因而用一组L297和L298增加驱动能力。
用P1口控制液晶芯片LCD1602。
通过分析可以看出,实现系统功能可以采用多种方法,由于随时有可能输入加速、加速信号和方向信号,因而采用中断方式效率最高,这样总共要完成4个部分的工作才能满足课题要求,即主程序部分、定时器中断部分、外部中断0和外部中断1部分。
其中主程序的主要功能是系统初始参数的设置。
定时器部分控制脉冲频率,它决定了步进电机转速的快慢;
两个外部中断程序要做的工作都是为了完成改变速度这一功能。
下面分析主程序与定时器中断程序及外部中断程序。
主程序设计
主程序中要完成的工作主要有系统初始值的设置、系统状态的显示以及各种开关状态的检测判断等。
其中系统初始状态的设置内容较多,该系统中,需要初始化定时器、外部中断;
对P1口送初值以决定脉冲分配方式,速度值存储区送初值决定步进电机的启动速度,对方向值存储区送初值决定步进电机旋转方向等内容。
若初始化P1=11H、速度和方向初始值均设为0,就意味着步进电机按四相单四拍运行,系统上电后在没有操作的情况下,步进电机不旋转,方向值显示“0”,速度值显示“0”,主程序流程图如图7所示。
定时中断设计
步进电机的转动主要是给电机各绕组按一定的时间间隔连续不断地按规律通入电流,步进电机才会旋转,时间间隔越短,速度就越快。
在这个系统中,这个时间间隔是用定时器重复中断一定次数产生的,即调节时间间隔就是调节定时器的中断次数,因而在定时器中断程序中,要做的工作主要是判断电机的运行方向、发下一个脉冲,以及保存当前的各种状态。
程序流程图如图8所示。
外部中断设计
外部中断所要完成的工作是根据按键次数,改变速度值存储区中的数据(该数据为定时器的中断次数),这样就改变了步进电机的输出脉冲频率,也就是改变了电机的转速。
速度增加按钮S2为INT0中断,其程序流程为原数据,当值等于7时,不改变原数值返回,小于7时,数据加1后返回;
速度减少按钮S3,当原数据不为0,减1保存数据,原数据为0则保持不变。
程序流程图如图9所示。
仿真与调试
5.1软件介绍
Proteus软件介绍
Proteus(海神)的ISIS是一款Labcenter出品的电路分析实物仿真系统,可仿真各种电路和IC,并支持单片机,元件库齐全,使用方便,是不可多得的专业的单片机软件仿真系统。
①全部满足我们提出的单片机软件仿真系统的标准,并在同类产品中具有明显的优势。
②具有模拟电路仿真、数字电路仿真、单片机及其外围电路组成的系统的仿真、RS一232动态仿真、1C调试器、SPI调试器、键盘和LCD系统仿真的功能;
有各种虚拟仪器,如示波器、逻辑分析仪、信号发生器等。
③目前支持的单片机类型有:
68000系列、8051系列、AVR系列、PIC12系列、PIC16系列、PIC18系列、Z80系列、HC11系列以及各种外围芯片。
④支持大量的存储器和外围芯片。
总之该软件是一款集单片机和SPICE分析于一身的仿真软件,功能极其强大,可仿真51、AVR、PIC。
Proteus与其它单片机仿真软件不同的是,它不仅能仿真单片机CPU的工作情况,也能仿真单片机外围电路或没有单片机参与的其它电路的工作情况。
因此在仿真和程序调试时,关心的不再是某些语句执行时单片机寄存器和存储器内容的改变,而是从工程的角度直接看程序运行和电路工作的过程和结果。
对于这样的仿真实验,从某种意义上讲,是弥补了实验和工程应用间脱节的矛盾和现象。
5.2keil软件介绍
Keil软件是目前最流行开发MCS-51系列单片机的软件,这从近年来各仿真机厂商纷纷宣布全面支持Keil即可看出。
Keil提供了包括C编译器、宏汇编、连接器、库管理和一个功能强大的仿真调试器等在内的完整开发方案,通过一个集成开发环境(uVision)将这些部份组合在一起。
5.3仿真过程
操作如下:
1)在Protues中画出系统电路图
2)将程序在keil中编译并生成hex文件。
3)把在keil中编译生成的HEX文件载入AT89C51芯片中;
3)运行仿真。
- 配套讲稿:
如PPT文件的首页显示word图标,表示该PPT已包含配套word讲稿。双击word图标可打开word文档。
- 特殊限制:
部分文档作品中含有的国旗、国徽等图片,仅作为作品整体效果示例展示,禁止商用。设计者仅对作品中独创性部分享有著作权。
- 关 键 词:
- 基于 51 单片机 步进 电机 设计