文档库 最新最全的文档下载
当前位置:文档库 › 步进电机正反转

步进电机正反转

步进电机正反转
步进电机正反转

步进电机控制设计

摘要

步进电机是一种将电脉冲转化为角位移的执行机构。当步进驱动器接收到一个脉冲信号,它就驱动步进电机按设定的方向转动一个固定的角度(称为“步距角”),它的旋转是以固定的角度一步一步运行的。可以通过控制脉冲个数来控制角位移量,从而达到准确定位的目的;同时可以通过控制脉冲频率来控制电机转动的速度和加速度,从而达到调速的目的。结合对步进电机的了解,然后对步进电机的控制原理包括步进电机的控制方式和驱动方式作了系统的说明,采用8051单片机来控制步进电机,并给出了步进电机的双相三拍控制单片机控制和三相六拍的单片机控制的具体实现方法,用汇编程序进行控制运行。控制系统通过单片机存储器、I/O接口、中断、键盘、LED显示器的扩展、步进电机的环形分频器、驱动及保护电路、人机接口电路、中断系统及复位电路、单电压驱动电路等的设计,实现了四相步进电机的正反转,急停等功能。

电机的控制系统由AT80C51单片机控制,具有抗干扰能力强,可靠性高而且系统扩展容易等优势。本次课程设计中着重于通过控制脉冲数来控制位移,实现准确定位。基于步进电机本身的优越性和应用的广泛性,这正是用单片机控制步进电机课程设计的实际意义。

关键字:步进电机 ,角位移,单片机 ,脉冲

目录

1 课题描述 (1)

2总体实现原理 (1)

3 步进电机原理及硬件设计 (2)

3.1 单片机电路 (2)

3.1.1 AT89C51单片机的组成结构 (2)

3.1.2 AT89C51单片机的引脚及功能 (4)

3.2步进电机 (6)

3.2.1 步进电机的工作原理 (6)

3.2.2控制原理 (7)

3.2.3步进电机的驱动方式 (8)

3.2.4最小系统 (9)

3.3输入显示部分 (10)

3.4 电源 (10)

4 软件程序设计 (11)

4.1 主程序的设计 (11)

4.2 定时中断设计 (12)

4.3 外部中断设计 (13)

4.4 系统软件程序 (14)

总结 (19)

致谢 (20)

参考文献 (21)

1 课题描述

传统的步进电机控制方法是由触发器产生控制脉冲来进行的,此种方法工作方式单一且难于实现人机交互,当步进电机的参数发生变化是,需要重新进行控制器的设计。而且由传统的触发器构成的控制系统具有控制电路复杂、控制精度低、生产成本高等缺点。由单片机控制的步进电机克服了以上缺点。它具有很高的精度,一般用在精确定位方面。

步进电机是一种将数字信号直接转换成角位移或线位移的控制驱动元件,具有快速起动和停止的特点。其驱动速度和指令脉冲能严格同步,具有较高的重复定位精度,并能实现正反转和平滑速度调节。它的运行速度和步距不受电源电压的波动及负载的影响,因而被广泛应用于数模转换、速度控制和位置控制系统。步进电动机以其显著的特点,在数字化制造时代发挥着重大的用途。常见的步进电机分三种:永磁式(PM)、反应式(VR)、混合式(HB),永磁式步进一般分为两相,转矩和体积较小,步进角一般为7.5度或15度;反应式步进一般为三相,可实现大转矩输出,步进角一般为1.5度,但噪声和振动都很大。在欧美等发达国家早已被淘汰;混合式步进是指混合了永磁式和反应式的优点。它又分为两相和五相:两相步进角一般为1.8度而五相步进角一般为0.72度,这种步进机应用最为广泛。目前使用单片机控制,单片机为微控制器的下位机和以计算机为上位机的步进电机控制系统,用软件代替步进控制器,使得线路简单,成本低,可靠性大大增加,灵活改变步进电机的控制方案,无需逻辑电路组成时序发生器,软件编程可灵活产生步进电机励磁序列来控制步进电机的运行方式。用此方式设计步进电机控制系统顺应了目前国内外控制系统微机化发展的趋势,充分利用了单片机的优点,使得通用性得到了提高。伴随不同的数字化技术的发展以及步进电机本身技术的提高,步进电机将会在更多的领域得到应用。

2总体实现原理

步进电机的系统总体框图如图1,在系统中采用AT89C51单片机产生A、B、C、D四相信号(更具实际需要,可以扩充更多相信好)。当采用单片机控制时,需要在单片机和步进电机之间设置隔离电路以使强弱分开。由于步进电机的驱动电流相对较大,可增设放大电路来提供步进电机的工作电流。系统电路由5部分组成,即:输入显示部分;AT89C51 单片机;直流电压和步进电机。

图1 系统总体框图

3 步进电机原理及硬件设计

3.1 单片机电路

本系统采用A89C51单片机产生控制信号单片机内部的内存即可满足要求。如需要扩展较多的外部RAM和ROM可加上数据缓冲器。步进电机控制信号通过AT89C51单片机其中一个口进行扩充。为了增加步进电机工作的灵活性,在启动步进电机工作之后,当有键按下,设置产生外部中断,达到灵活控制电机的目的。下面介绍一下AT89C51单片机。

3.1.1 AT89C51单片机的组成结构

AT89C51单片机内部硬件结构框图如图2所示。它由一个8位中央处理器(CPU)、一个256B片内RAM及4KBFlashROM、21个特殊功能寄存器、4个

8为并行I/O口以及中断系统等部分组成,各功能部件通过片内单一总线连成一个整体,集成在一块芯片上。

(1)CPU

CPU是单片机的核心部分,CPU包括两个基本部分:运算器和控制器。

①运算器

运算器即算术逻辑单元ALU,是进行算术或逻辑运算的部件。可实现算术运算和逻辑运算。操作的结果一般送回累加器ACC,而其状态信息送至程序状态寄存器PSW。

②控制器

控制器是用来控制计算机工作的部件。控制器接收来自存储器的指令,使各部件协调工作,完成指令所规定的操作。

时钟源外部事件

外部中断P0P1P2P3RXD TXD

图2 A T89C51单片机内部结构示意图

(2)内部存储器

①内部数据存储器

AT89C51芯片内共有256B(地址为00H-FFH)的数据存储器,其中高128B (地址为:80H-FFH)被专用寄存器占用,能作为寄存器供用户使用的只是低128B(地址为:00H-7FH),用于存放可读写的数据,如程序执行过程中的变量。

②内部程序存储器

AT89C51共有(地址为:0000H-0FFFH)的flash程序存储器,用于存放程序、原始数据或表格常数。

(3)定时/计数器

AT89C51共有两个16位的定时/计数器都可以设置成计数方式,用于对外部事件进行计数;也可设置成定时方式,并可以根据计数或定时的结果实现对单片机运行的控制。

(4)并行I/O口

用于进行单片机内外的传输,4个8位的I/O口(P0、P1、P2、P3)。每个8位的口,既可用作输入口,也可用作输出口,每个口即可以8位同步读写,又可对每一位进行单独的操作。标准I/O口的主要功能相当于一个8位锁存器,能存储一个字节的二进制数据,以保持与之相连接的8条口线各自电位的高低状态。

3.1.2 AT89C51单片机的引脚及功能

AT89C51共有40个引脚,下面介绍一下它们的主要功能。

(1)P0口

P0口某一位的结构图如图3所示,一个输出锁存器、两个三态缓冲器、一

图3 P0口的结构示意图

个转换开关MUX、一个输出驱动电路(T1和T2)和一个与门及一个非门组成。

(2)P1,P2,P3口

P1口是唯一的单功能口,位结构图如图4所示,仅能作为通用I/O口使用,P1口是8位准双向口,作通用输入/输出口使用,Pl口有别于P0口,它接有内部上拉电阻。P1口的每以一位可以独立地定义为输人或者输出,因此,

P1口既可作为8位并行输入/输出口,又可作为8位输入/输出端。CPU既可以对P1口进行字节操作,又可以进行位操作。当作输入方式时,该位的锁存器必须顶写1。

P2口是8位准双向输入/输出接口,当外接程序存储据时,P2口给出地址的高8位,此时不能用作通用,I/O口。当外按数据存储器时,若RAM小于256KB,用R0、R1作间址寄存器,只需要P0口送出地址低8位,P2口可以用

图4 P1口的位结构图

作通用I/O ;若RAM大于256KB,必须用16位寄存器DPTR作间址寄存器.则P2口只能在一定限度内作一股I/O 口使用。

P3口是多功能口,同P0口一样,当做输入口时,必须先向锁存器写“1”,使场效应管T截止。

(3)主电源引脚GND和Vcc

GND(20):接地;Vcc(40):正常操作时接十5V电源

(4)外接晶体引脚XTAL1和XTAL2

当外接晶体振荡器时,XTAL1和XTAL2分别接在外接晶体两端,当采用外部时钟方式时,XTAL1接地,XTAL2接外来振荡信号。

(5)控制引脚

RST/Vpp(9):当振荡器正常运行时,在此引脚上出现二个机器周期以上的高电平使单片机复位。Vcc掉电期间,此引脚可接备用电源,以保持内部RAM的数据。当Vcc下降掉到低于规定的水平,而VPD在其规定的电压范围内,VPD 就向内部RAM提供备用电源。

ALE(30):当访问外部存储器时,由单片机的P2口送出地址的高8位,P0口送出地址的低8位,数据也是通过P0口传送。作为P0口某时选出的信息到底是低8位地址还是传送的数据,需要有一信号同步地进行分别。当ALE信号(允

许地址锁存)为高电平(有效).P0口送出低8位地址,通过ALE信号锁存低8位地址。

PSEN(29):程序存储器读选通信号,低电平有效。

EA/Vpp(31):当EA保持高电平时,访问内部程序存储器(4K8),但当PC(程序计数器)值超过OFFFH时,将自动转向执行外部程序存储器内的程序当EA保持低电平时,则只访问外部程序存储器(从0000H地址开始),不管单片机内部是否有程序存储器。

3.2 步进电机

3.2.1 步进电机的工作原理

步进电机是将电脉冲信号转变为角位移或线位移的开环控制元件。它将脉冲信号转变成角位移,在非超载的情况下,电机的转速、停止的位置只取决于脉冲信号的频率和脉冲数,而不受负载变化的影响,即给电机加一个脉冲信号,电机则转过一个步距角。步进电机的驱动电路根据控制信号工作,控制信号由单片机产生。

设计中采用了20BY-0 型步进电机,该电机为四相步进电机,采用单极性直流电源供电。只要对步进电机的各相绕组按合适的时序通电,就能使步进电机转动。当某一相绕组通电时,对应的磁极产生磁场,并与转子形成磁路,这时,如果定子和转子的小齿没有对齐,在磁场的作用下,由于磁通具有力图走磁阻最小路径的特点,则转子将转动一定的角度,使转子与定子的齿相互对齐。其中步进电机的静态指标及术语如下。

(1)相数:产生不同队N、S磁场的激磁线圈对数,常用m表示。

(2)拍数:完成一个磁场周期性变化所需脉冲用n 表示,或指电机转过一个齿距角所需脉冲数,以四相电机为例,有四相四拍运行方式即AB→BC→CD →DA→AB,四相八拍运行方式即A→AB→B→BC→C→CD→D→DA→A。

(3)步距角:对应一个脉冲信号,电机转子转过的角位移用θ表示。

(4)定位转矩:电机在不通电的状态下,电机转子自身的锁定力矩(由磁场齿的谐波以及机械误差造成的)。

(5)静转矩:电机在额定静态作业下,电机不做旋转运动时,电机转轴的锁定力矩。此力矩是衡量电机体积的标准,与驱动电压及驱动电源等无关。虽然静态转矩与电磁激磁匝数成正比,与定子和转子间的气隙有关。

3.2.2 控制原理

根据系统的控制要求,控制输入部分设置了启动控制,换向控制,加速控制和减速控制按钮,分别是K1、K2、S2、S3,控制电路如图 5 所示。通过K1、K2 状态变化来实现电机的启动和换向功能。当K1、K2 的状态变化时,内部程序检测P1.0 和P1.1 的状态来调用相应的启动和换向程序,发现系统的电机的启动和正反转控制。

图5 控制电路原理图

根据步进电机的工作原理可以知道,步进电机转速的控制主要是通过控制通入电机的脉冲频率,从而控制电机的转速。对于单片机而言,主要的方法有:软件延时和定时中断在此电路中电机的转速控制主要是通过定时器的中断来实现的,该电路控制电机加速度主要是通过S2、S3 的断开和闭合,从而控制外部中断根据按键次数,改变速度值存储区中的数据(该数据为定时器的中断次数),这样就改变了步进电机的输出脉冲频率,从而改变了电机的转速。

3.2.3 步进电机的驱动方式

步进电机常用的驱动方式是全电压驱动,即在电机移步与锁步时都加载额定电压。为了防止电机过流及改善驱动特性,需加限流电阻。由于步进电机锁步时,限流电阻要消耗掉大量的功率,故限流电阻要有较大的功率容量,并且开关管也要有较高的负载能力。

图6 步进电机驱动电路

通过ULN2803 构成比较多的驱动电路,电路图如图6所示。通过单片机的P1.0-P1.3 输出脉冲到ULN2803 的1B-4B口,经信号放大后从1C-4C 口分别输出到电机的A、B、C、D相。

步进电机的另一种驱动方式是高低压驱动,即在电机移步时,加额定或超过额定值的电压,以便在较大的电流驱动下,使电机快速移步;而在锁步时,则加低于额定值的电压,只让电机绕组流过锁步所需的电流值。这样,既可以减少限流电阻的功率消耗,又可以提高电机的运行速度,但这种驱动方式的电路要复杂一些。驱动脉冲的分配可以使用硬件方法,即用脉冲分配器实现。

3.2.4 最小系统

单片机最小系统或者称为最小应用系统,即用最少的元件组成的单片机可以工作的系统,对单片机来说,最小系统一般应该包括:单片机、复位电路、晶振电路。

复位电路:使用了独立式键盘,单片机的P1 口键盘的接口。该设计要求只需4 个键对步进电机的状态进行控制,但考虑到对控制功能的扩展,使用了6路独立式键盘。复位电路采用手动复位,所谓手动复位,是指通过接通一按钮开关,使单片机进入复位状态,晶振电路用30PF 的电容和一12M 晶体振荡器组成为整个电路提供时钟频率。如图7所示。

图7 复位及时钟振荡电路

晶振电路:89C51 单片机的时钟信号通常用两种电路形式电路得到:内部震荡方式和外部中断方式。在引脚XTAL1 和XTAL2 外部接晶振电路器(简称晶振)或陶瓷晶振器,就构成了内部晶振方式。由于单片机内部有一个高增益反相放大器,当外接晶振后,就构成了自激振荡器并产生振荡时钟脉冲。内部振荡方式的外部电路如图7所示。其电容值一般在5-30pf,晶振频率的典型值为12MHz,采用6MHz 的情况也比较多。内部振荡方式所得的时钟信号比较稳定,实用电路实用较多。

3.3 输入显示部分

本系统是基于提高智能机灵活性而设计的,对于步进电机的频率、步数、位置和停止等通过键盘输入相应指令,由单片机输出步进电机控制信号来实现控制,用数码管显示输入的参数并在工作时动态显示剩下的步数。

显然,要显示一个字型就应该使此字型的相应发光二极管点亮,实际上就是送一个不同电平的组合代表的数据到数码管。在该步进电机的控制器中,电机可以正反转,可以加速、减速,其中电机转速的等级分为七级,为了方便知道电机的运行状态和电机的转速的等级,这里设计了电机转速和电机的工作状态的显示电路。在显示电路中,主要是利用了单片机的P0 口和P2 口。采用两个共阳数码管作显示。显示电路如图8所示。

图8 显示电路

第一个数码管接的a、b、c、d、e、f、g、h 分别接P0.0~P0.7 口,用于显示电机正反转状态,正转时显示“1”,反转时显示“一”,不转时显示“0”。第二个数码管的a、b、c、d、e、f、g、h分别接P2.0~P2.7口,用于显示电机的转速级别,共七级,即从1~7 转速依次递增,“0”表示转速为零。

3.4 电源

系统中包含弱电和强电两部分,需要提供两种电源电压。这里采用集成稳压器CW7805和输出电压可变的LM317来分别提供5V和1.25V-37V电压,两电压不共地。其中一路给单片机供电,另一路给步进电机供电。

将各部分合在一起总体电路如图9所示

图9 总体电路

4 软件程序设计

在步进电机系统中,相应的控制信号由单片机来产生,根据需要通过键盘输入电机的转动方向、转动速率和转动步数,在工作使用数码管来动态显示剩下的步数。所以,软件部分由4大模块组成:主程序部分、定时器中断部分、外部中断0 和外部中断1 部分,其中主程序的主要功能是系统初始参数的设置及启动开关的检测,若启动开关合上则系统开始工作,反之系统停止工作;定时器部分控制脉冲频率,它决定了步进电机转速的快慢;两个外部中断程序要做的工作都是为了完成改变速度这一功能。下面分析主程序与定时器中断程序及外部中断程序。

4.1 主程序的设计

主程序中要完成的工作主要有系统初始值的设置、系统状态的显示以及各种开关状态的检测判断等。其中系统初始状态的设置内容较多,该系统中,需要初

始化定时器、外部中断;对P1 口送初值以决定脉冲分配方式,速度值存储区送初值决定步进电机的启动速度,对方向值存储区送初值决定步进电机旋转方向等内容。若初始化P1=11H、速度和方向初始值均设为0,就意味着步进电机按相单四拍运行,系统上电后在没有操作的情况下,步进电机不旋转,方向值显示“0”,速度值显示“0”,主程序流程图如图10所示

图10 主程序流程图

4.2 定时中断设计

步进电机的转动主要是给电机各绕组按一定的时间间隔连续不断地按规律通入电流,步进电机才会旋转,时间间隔越短,速度就越快。在这个系统中,这个时间间隔是用定时器重复中断一定次数产生的,即调节时间间隔就是调节定时器的中断次数,因而在定时器中断程序中,要做的工作主要是判断电机的运行方向发下一个脉冲,以及保存当前的各种状态。程序流程图如图11所示。

图11 定时中断程序流程

4.3 外部中断设计

外部中断所要完成的工作是根据按键次数,改变速度值存储区中的数据(该数据为定时器的中断次数),这样就改变了步进电机的输出脉冲频率,也就是改变了电机的转速。速度增加按钮S2 为INT0 中断,其程序流程为原数据,当值等于7 时,不改变原数值返回,小于7 时,数据加 1 后返回;速度减少按钮S3,当原数据不为0,减 1 保存数据,原数据为0 则保持不变。程序流程图如图12所示。

图12 外部中断程序流程图

4.4 系统软件程序

SPEED EQU 10H ;SPEED为转速等级标志,共7 级,即1-7

FX EQU 11H ;FX 为方向标志COUNT EQU 12H ;COUNT 中断次数标志

ORG 0000H

AJMP MAIN

ORG 0003H ;外部中断0入口地址,加速子程序

AJMP UP

ORG 0013H ;外部中断1入口地址,减速子程序

AJMP DOWN

ORG 000BH ;定时器0 中断入口地址,控制中断次数来达到控制转速AJMP ZDT0

ORG 0030H

MAIN: MOV SP,#60H

MOV TMOD,#01H ;工作于定时、软件置位启动!模式1(16 位计时器)MOV TH0,#0CFH

MOV TL0,#2CH

MOV COUNT,#01H

SETB ET0 ;定时/计数器允许中断

CLR IT0 ;外部中断为电平触发方式,低电平有效

CLR IT1

SETB EX0 ;外部允许中断

SETB EX1

SETB EA ;开总中断

MOV R1,#11H ; 四相单四拍运行,共阳数码管方向显示8,速度值显示0 MOV SPEED,#00H

MOV FX,#00H

XIANS: MOV A,SPEED

MOV DPTR,#LED

MOVC A,@A+DPTR ;查表获取等级对应数码管代码

MOV P2,A ;第二个数码管显示转速等级

MOV A,FX ;准备判断转向

CJNE A,#11H,ELS

MOV P0, #0F9H ;第一个数码管显示1,表示正转

AJMP QD

ELS: CJNE A,#00H,ZHENG

MOV P0,#0C0H ;第一个数码管显示0,表示不转

AJMP QD

ZHENG: MOV P0,#0BFH ;第一个数码管显示-,表示反转

QD: JB P3.4,DD ;P3.4 接启动开关K1,P3.4=1 时启动

CLR TR0 ;停止定时/计数器

MOV P0,#0C0H ;第一个数码管显示0,表示不转MOV P2,#0C0H ;第二个数码管显示0,表示转速为0

MOV SPEED,#00H ;重新赋初值

MOV FX,#00H

AJMP QD

DD: MOV A,SPEED

JNZ GO ;A 不等于0,即初始速度不为零,则转移到GO CLR TR0 ;停止定时/计数器

AJMP QD

GO: SETB TR0 ;开启定时/计数器

ACALL DELAY

AJMP XIANS

DELAY: MOV R6,#10 ;延时子程序

DEL1: MOV R7,#250

HERE1: DJNZ R7, HERE1

DJNZ R6,DEL1

RET

;以下ZDT0为定时器中断程序

ZDT0: PUSH ACC

PUSH DPH

PUSH DPL

MOV TH0,#0D8H

MOV TL0,#0F0H

DJNZ COUNT,EXIT

JB P3.5,NIZHUAN ;查询方向标志,P3.5 接换向开关K2

MOV FX,#11H

NIZHUAN:MOV A,FX

CJNE A,#11H,FZ ;若A不等于11,即正转,则转移到FZ MOV A,R1 ;R1 记录上一次电机脉冲状态

MOV P1,A

RR A ;循环右一位

MOV R1,A

MOV P1,A

AJMP RE

FZ: MOV A,R1

MOV P1,A

RL A ;循环左移一位

MOV P1,A

MOV R1,A

RE: MOV A,SPEED

MOV DPTR,#TAB

MOVC A,@A+DPTR

MOV COUNT,A ;把转速级别赋给COUNT

JB P3.5 ,FFX ; P3.5 接换向开关K2, 即换向位,若P3.5=1,则跳到FFX MOV FX,#11H

AJMP EXIT

FFX: MOV FX,#0FEH ;只要FX不等于11H,就可以通过循环左移或右移进行换向

EXIT: POP DPL

POP DPH

POP ACC

RETI

;以下UP 为加速中断程序

UP: PUSH ACC

ACALL DELAY ;延时防抖动

JB P3.2,UPEX ;P3.2 为外部中断0 位,接增速开关S2,低电平有效,若P3.2=1,则退出

MOV A,SPEED

CJNE A,#7,SZ ;最大等级为7,若A不等于7,则转移到SZ

AJMP UPEX ;若A=7,则退出

SZ: INC SPEED ;SPEED= SPEED+1

UPEX: POP ACC

HERE2: JNB P3.2,HERE2 ;本条指令为防止开关S2 按下去后弹不起,导致一直产生中断

RETI

以下DOWN为减速中断程序

DOWN: PUSH ACC

ACALL DELAY

JB P3.3,DEX ; P3.3 为外部中断 1 位,接减速开关S3,低电平有效,若P3.3=1,则退出

MOV A,SPEED

CJNE A,#0,SJ

AJMP DEX

SJ: DEC SPEED ;SPEED= SPEED-1

DEX: POP ACC

HERE3: JNB P3.3,HERE3

RETI

TAB: DB 0,60,40,35,30,28,25,21;

0 1 2 3 4 5 6 7 8 9

LED: DB 0C0H,0F9H,0A4H,0B0H,99H,92H,82H,0F8H,80H,98H

END

步进电机正反转启停控制的设计

电机控制课程设计报告书 题 目 步进电机正反转启停控制的设计 院 部 名 称 机电工程学院 专 业 电气工程及其自动化 班 级 组 长 姓 名 学 号 同 组 学 生 设 计 地 点 工科楼C 设 计 学 时 1周 指 导 教 师 金陵科技学院教务处制

目录 一、设计任务和要求 二、设计思路 2.1系统总框图------------------------------------------------------------------------02 2.2设计原理--------------------------------------------------------03 三、系统硬件设置 3.1时钟信号控制电路原理介绍----------------------------------------03 3.1.1 芯片89C51介绍--------------------------------------------03 3.1.2 芯片管脚说明----------------------------------------------03 3.1.3 时钟信号控制电路------------------------------------------05 3.2系统复位电路原理介绍--------------------------------------------06 3.2.1 系统复位电路----------------------------------------------06 3.3驱动电路原理介绍------------------------------------------------06 3.3.1步进电机原理介绍-------------------------------------------06 3.3.2驱动电路---------------------------------------------------08 3.4正反转控制电路原理介绍------------------------------------------08 3. 4.1正反转控制电路---------------------------------------------08 四、系统软件设置 4.1主程序流程图----------------------------------------------------09 4.2源程序----------------------------------------------------------09 五、调试过程与结果----------------------------------------------18 六、总结与体会---------------------------------------------------18 七、参考资料------------------------------------------------------19 八、附录-----------------------------------------------------------20附录一总电路图

西门子S 系列PLC控制步进电机进行正反转的方法

1、主程序先正转,等到正转完了就中断,中断中接通个辅助触点(),当闭合,住程序中的反转开始运做。这样子就OK了。 2、用PTO指令让OR 高速脉冲,另一个点如做方向信号,就可以控制正反转了,速度快慢就要控制输出脉冲周期了,周期越短速度越快,如果你速度很快的话请考虑缓慢加速,不然它是启动不了的,如果方向也变的快的话就要还做一个缓慢减速,不然它振动会蛮厉害,而且也会失步。 3、程NETWORK 1 // 用于单段脉冲串操作的主程序(PTO) // 首次扫描时,将映像寄存器位设为低 // 并调用子程序0 LD R 1 CALL SBR_0 NETWORK 1 // 子程序0开始 LD MOVB 16#8D SMB67 // 设置控制字节: // - 选择PTO操作 // - 选择单段操作 // - 选择毫秒增加 // - 设置脉冲计数和周期数值 // - 启用PTO功能 MOVW +500 SMW68 // 将周期设为500毫秒。 MOVD +4 SMD72 // 将脉冲计数设为4次脉冲。 ATCH INT_0 19 // 将中断例行程序0定义为 // 处理PTO完成中断的中断。 ENI // 全局中断启用

PLS 0 // 激活PTO操作,PLS0 =》 MOVB 16#89 SMB67 // 预载控制字节,用于随后的 // 周期改动。 NETWORK 1 // 中断0开始 // 如果当前周期为500毫秒: // 将周期设为1000毫秒,并生成4次脉冲 LDW= SMW68 +500 MOVW +1000 SMW68 PLS 0 CRETI NETWORK 2 // 如果当前周期为1000毫秒: // 将周期设为500毫秒,并生成4次脉冲 LDW= SMW68 +1000 MOVW +500 SMW68 PLS 0序注释 艾驰商城是国内最专业的MRO工业品网购平台,正品现货、优势价格、迅捷配送,是一站式采购的工业品商城!具有10年工业用品电子商务领域研究,以强大的信息通道建设的优势,以及依托线下贸易交易市场在工业用品行业上游供应链的整合能力,为广大的用户提供了传感器、图尔克传感器、变频器、断路器、继电器、PLC、工控机、仪器仪表、气缸、五金工具、伺服电机、劳保用品等一系列自动化的工控产品。 如需进一步了解相关PLC产品的选型,报价,采购,参数,图片,批发等信息,请关注艾驰商城。

PLC实现步进电机地正反转和调整控制系统

实训课题三 PLC实现步进电机正反转和调速控制 一、实验目的 1、掌握步进电机的工作原理 2、掌握带驱动电源的步进电机的控制方法 3、掌握DECO指令实现步进电机正反转和调速控制的程序 二、实训仪器和设备 -48MR PLC一台 1、FX 2N 2、两相四拍带驱动电源的步进电机一套 3、正反切换开关、起停开关、增减速开关各一个 三、步进电机工作原理 步进电机是纯粹的数字控制电动机,它将电脉冲信号转换成角位移,即给一个脉冲信号,步进电机就转动一个角度,图3-1是一个三相反应式步进电机结图。从图中可以看出,它分成转子和定子两部分。定子是由硅钢片叠成,定子上有六个磁极(大极),每两个相对的磁极(N、S极)组成一对。共有3对。每对磁极都绕有同一绕组,也即形成1相,这样三对磁极有3个绕组,形成三相。可以得出,三相步进电机有3对磁极、3相绕组;四相步进电机有4对磁极、四相绕组,依此类推。 反应式步进电动机的动力来自于电磁力。在电磁力的作用下,转子被强行推动到最大磁导率(或者最小磁阻)的位置,如图3-1(a)所示,定子小齿与转子小齿对齐的位置,并处于平衡状态。对三相异步电动机来说,当某一相的磁极处于最大导磁位置时,另外两相相必处于非最大导磁位置,如图3-1(b)所示,即定子小齿与转子小齿不对齐的位置。 把定子小齿与转子小齿对齐的状态称为对齿,把定子小齿与转子小齿不对齐的状态称为错齿。错齿的存在是步进电机能够旋转的前提条件,所以,在步进电机的结构中必须保证有错齿的存在,也就是说,当某一相处于对齿状态时,其它绕组必须处于错齿状态。 本实验的电机采用两相混合式步进电机,其部上下是两个磁铁,中间是线圈,通了直流电以后,就成了电磁铁,被上下的磁铁吸引后就产生了偏转。因为中间

基于单片机ATS控制步进电机正反转

基于单片机A T S控制步进 电机正反转 The latest revision on November 22, 2020

目录 步进电机 (7) 附件A 源程序 .......................................... (12) 附件B 仿真结果 (15) 致谢 (18)

摘要 能够实现步进电机控制的方式有多种,可以采用前期的模拟电路、数字电路或模拟与数字电路相结合的方式。近年来随着科技的飞速发展,单片机的应用正在不断深入,同时带动传统控制检测日新月异更新。本文介绍一种用AT89S52作为核心部件进行逻辑控制及信号产生的单片机技术和汇编语言编程设计的步进电机控制系统,步进电机背景与现状、硬件设计、软件设计及其仿真都做了详细的介绍,使我们不仅对步进电机的原理有了深入的了解,也对单片机的设计研发过程有了更加深刻的体会。本控制系统采用单片机控制,通过人为按动开关实现步进电机的开关,复位。该系统还增加了步进电机的加速及减速功能。具有灵活方便、适用范围广的特点,基本能够满足实践需求。 关键词: AT89S52 步进电机 ULN2003 第一章系统分析 框图设计 根据系统要求画出基于AT89S52单片机的控制步进电机的控制框图如图2-1所示。

图2-1基于AT89C52单片机的控制步进电机的控制框图 系统主要包括单片机、复位电路、晶振电路、按键电路、步进电机及驱动电路几部分。 晶振电路 AT89C52单片机有一个用于构成内部振荡器的反相放大器,XTAL1 和XTAL2 分别是放大器的输入、输出端。石英晶体和陶瓷谐振器都可以用来一起构成自激振荡器。 晶振模块自带振荡器、提供低阻方波输出,并且能够在一定条件下保证运行。最常用的两种类型是晶振模块和集成RC振荡器(硅振荡器)。晶振模块提供与分立晶振相同的精度。硅振荡器的精度要比分立RC振荡器高,多数情况下能够提供与陶瓷谐振槽路相当的精度。图2-2为晶振电路。 图2-2 晶振电路 第二章系统设计 硬件连接图 根据图2-1,可以设计出单片机控制步进电机的硬件电路图,如图3-1所示。

步进电机启动停止正反转控制程序的汇编语言的实现

DELAY 1MS MACRO TIME ;延时宏命令 LOCAL AA LOCAL BB PUSH CX MOV CX,TIME AA: PUSH CX MOV CX,1000 BB: NOP LOOP BB POP CX LOOP AA POP CX ENDM DATA SEGMENT TABA DB 01H,03H,02H,06H,04H,05H;正转的模型 TABB DB 05H,04H,06H,02H,03H,01H;反转的模型DATA ENDS CODE SEGMENT ZZ PROC NEAR PUSH DS MOV AX,DATA MOV DS,AX MOV AX,0 PUSH AX MOV DX,203H MOV AL,80H OUT DX,AL ;8255的控制字设定 MOV DX,200H MOV AL,0 OUT DX,AL ;先输出制动命令 MOV CX,360 ;设定正转步数 DD: MOV BL,6 ;六拍 MOV DX,200H LEA DI,TABA ;指针指向正转的数字模型 CC: MOV AL,[DI] OUT DX,AL DELAY 1MS 10 INC DI ;指针加1,指向下一步的数字模型 DEC BL ;拍数减1 JNZ CC ;六拍未结束,则继续循环 LOOP DD;360个周期的六拍未结束,继续循环 ZZ ENDP

FZ PROC NEAR MOV CX,400 ;设定反转步数 FF: MOV BL,6 MOV DX,200H LEA DI,TABB ;指针指向反转的数字模型 EE: MOV AL,[DI] OUT DX,AL DELAY 1MS 10 DEC DI ;指针减1,指向反转下一步数字模型 DEC BL JNZ EE LOOP FF FZ ENDP MOV DX,200H MOV AL,0 OUT DX,AL ;结束后,输出制动命令 RET MAIN ENDP CODE ENDS END START

片机课程设计步进电机启动停止正反转

单片机课程设计报告 步进电机控制设计 姓名:黄盛海 201030480108 詹志勋 201030480125 郑榕生 201030480128 班级: 10车辆工程1班 指导老师:李震姜晟 日期: 2012.6.18~6.20 华南农业大学工程学院

摘要:步进电机是机电控制中一种常用的执行机构,它的用途是将电脉冲转化为角位移,它的的驱动电路根据控制信号工作,控制信号由单片机产生。 本次课程设计主要采用AT89S52芯片,用汇编语言编写出电机的正转、反转、加速、减速、停止程序,通过单片机、电机的驱动芯片ULN2003以及相应的按键实现以上功能,并且步进电机的工作状态要用相应的发光二极管显示出来。控制系统主要由硬件设计和软件设计两部分组成。其中,硬件设计包括单片机的最小系统模块、电源模块、控制模块、步进电机ULN2003A驱动模块、彩灯显示模块5个功能模块的设计。并且通过仿真控制系统对硬件、软件进行了调试和改善,实现了上述功能。本系统具有智能性、实用性及可靠性的特点。 关键词:步进电机单片机电脉冲驱动系统汇编语言

目录 1、课程设计目的及要求 (4) 2、整体系统分析 (4) 3、硬件系统分析 (6) 4、软件系统分析 (10) 5、调试结果 (10) 6、结论 (11) 7、参考文献 (12) 附一:源程序 (12)

1. 课程设计目的及要求 1.1 课程设计目的 增进对单片机的感性认识,加深对单片机理论方面的理解; 掌握单片机的内部功能模块的应用,如定时器/计数器、中断、存贮器、I/O口、A/D转换等; 了解和掌握单片机应用系统的软硬件设计过程及实现方法。 1.2 课程设计要求 设计一个步进电机控制器,要求用多个按键控制电机的启动/停止、加速、减速、反转等控制功能; 用彩灯显示电机的转动状态,如加速就控制彩灯快速闪烁,减速则控制彩灯慢速闪烁等。 2. 整体系统分析 2.1步进电机控制工作原理 步进电机实际上是一个数字\角度转换器,也是一个串行的数\模转换器。步进电机的基本控制包括启停控制、转向控制、速度控制、换向控制4 个方面。从结构上看 ,步进电机分为三相、四相、五相等类型 ,本次设计的是四相电机。四相步进电机的工作方式有单四拍、双四拍和单双八拍 3 种。

西门子S系列PLC控制步进电机进行正反转的方法

西门子S系列P L C控制步进电机进行正反转 的方法 SANY标准化小组 #QS8QHH-HHGX8Q8-GNHHJ8-HHMHGN#

1、主程序先正转,等到正转完了就中断,中断中接通个辅助触点(),当闭合,住程序中的反转开始运做。这样子就OK了。 2、用PTO指令让 OR 高速脉冲,另一个点如做方向信号,就可以控制正反转了,速度快慢就要控制输出脉冲周期了,周期越短速度越快,如果你速度很快的话请考虑缓慢加速,不然它是启动不了的,如果方向也变的快的话就要还做一个缓慢减速,不然它振动会蛮厉害,而且也会失步。 3、程NETWORK 1 // 用于单段脉冲串操作的主程序(PTO) // 首次扫描时,将映像寄存器位设为低 // 并调用子程序0 LD R 1 CALL SBR_0 NETWORK 1 // 子程序0开始 LD MOVB 16#8D SMB67 // 设置控制字节: // - 选择PTO操作 // - 选择单段操作 // - 选择毫秒增加 // - 设置脉冲计数和周期数值 // - 启用PTO功能 MOVW +500 SMW68 // 将周期设为500毫秒。 MOVD +4 SMD72 // 将脉冲计数设为4次脉冲。 ATCH INT_0 19 // 将中断例行程序0定义为 // 处理PTO完成中断的中断。 ENI // 全局中断启用

PLS 0 // 激活PTO操作,PLS0 =》 MOVB 16#89 SMB67 // 预载控制字节,用于随后的 // 周期改动。 NETWORK 1 // 中断0开始 // 如果当前周期为500毫秒: // 将周期设为1000毫秒,并生成4次脉冲 LDW= SMW68 +500 MOVW +1000 SMW68 PLS 0 CRETI NETWORK 2 // 如果当前周期为1000毫秒: // 将周期设为500毫秒,并生成4次脉冲 LDW= SMW68 +1000 MOVW +500 SMW68 PLS 0序注释 艾驰商城是国内最专业的MRO工业品网购平台,正品现货、优势价格、迅捷配送,是一站式采购的工业品商城!具有10年工业用品电子商务领域研究,以强大的信息通道建设的优势,以及依托线下贸易交易市场在工业用品行业上游供应链的整合能力,为广大的用户提供了传感器、图尔克传感器、变频器、断路器、继电器、PLC、工控机、仪器仪表、气缸、五金工具、伺服电机、劳保用品等一系列自动化的工控产品。 如需进一步了解相关PLC产品的选型,报价,采购,参数,图片,批发等信息,请关注艾驰商城。

单片机课设步进电机控制正反转

单片机课程设计报告设计题目:步进电机控制系统 学院自动化与信息工程学院 专业电气工程及其自动化 班级 姓名 学号 指导教师王水鱼 2010 年秋季学期

目录 1.设计目的 (2) 2.设计的主要内容和要求 (2) 3.题目及要求功能分析 (2) 4.设计方案 (5) 4.1 整体方案 (5) 4.2 具体方案 (5) 5.硬件电路的设计 (6) 5.1 硬件线路 (6) 5.2 工作原理 (7) 5.3 操作时序 (8) 6. 软件设计 (8) 6.1 软件结构 (8) 6.2 程序流程 (9) 6.3 源程序清单 (9) 7. 系统仿真 (9) 8. 使用说明 (10) 9. 设计总结 (10) 参考文献 (11) 附录 (12)

步进电机的控制 1.设计目的 (1)熟悉单片机编程原理。 (2)熟练掌握51单片机的控制电路和最小系统。 (3)单片机基本应用系统的设计方法。 2.设计的主要内容和要求 (1)查阅资料,了解步进电机的工作原理。 (2)通过单片机给参数控制电机的转动。 (3)通过按钮控制启停及反转。 (4)其他功能。 3.题目及要求功能分析 步进电机:步进电机是一种将电脉冲转化为角位移的执行机构。当步进驱动器接收到一个脉冲信号,它就驱动步进电机按设定的方向转动一个固定的角度(称为“步距角”),它的旋转是以固定的角度一步一步运行的。可以通过控制脉冲个数来控制角位移量,从而达到准确定位的目的;同时可以通过控制脉冲频率来控制电机转动的速度和加速度,从而达到调速的目的。步进电机可以作为一种控制用的特种电机,利用其精度高等特点,广泛应用于各种工业控制系统中。 三相单、双六拍步进电机的结构和工作原理: 三相单、双六拍步进电机通电方式:这种方式的通电顺

最新单片机课设步进电机控制正反转

单片机课设步进电机控制正反转

单片机课程设计报告设计题目:步进电机控制系统 学院自动化与信息工程学院 专业电气工程及其自动化 班级 姓名 学号 指导教师王水鱼 2010 年秋季学期 起止时间:2011年1月10日至2011年1月14日 平时 (10%) 任务完成 (30%) 答辩 (30%) 课设报告 (30%) 总评成绩

目录 1.设计目的 (2) 2.设计的主要内容和要求 (2) 3.题目及要求功能分析 (2) 4.设计方案 (5) 4.1 整体方案 (5) 4.2 具体方案 (5) 5.硬件电路的设计 (6) 5.1 硬件线路 (6) 5.2 工作原理 (7) 5.3 操作时序 (8) 6. 软件设计 (8) 6.1 软件结构 (8) 6.2 程序流程 (9) 6.3 源程序清单 (9) 7. 系统仿真 (9) 8. 使用说明 (10) 9. 设计总结 (10) 参考文献 (11) 附录 (12)

步进电机的控制 1.设计目的 (1)熟悉单片机编程原理。 (2)熟练掌握51单片机的控制电路和最小系统。 (3)单片机基本应用系统的设计方法。 2.设计的主要内容和要求 (1)查阅资料,了解步进电机的工作原理。 (2)通过单片机给参数控制电机的转动。 (3)通过按钮控制启停及反转。 (4)其他功能。 3.题目及要求功能分析 步进电机:步进电机是一种将电脉冲转化为角位移的执行机构。当步进驱动器接收到一个脉冲信号,它就驱动步进电机按设定的方向转动一个固定的角度(称为“步距角”),它的旋转是以固定的角度一步一步运行的。可以通过控制脉冲个数来控制角位移量,从而达到准确定位的目的;同时可以通过控制脉冲频率来控制电机转动的速度和加速度,从而达到调速的目的。步进电机可以作为一种控制用的特种电机,利用其精度高等特点,广泛应用于各种工业控制系统中。 三相单、双六拍步进电机的结构和工作原理:

步进电机正反转控制C语言程序 只为初学者

只为初学者的步进电机正反控制程序 #include<> #define uchar unsigned char #define uint unsigned int #define MotorData P2 //步进电机控制接口定义 sbit zheng=P3^0; sbit fan=P3^1; sbit stop=P3^2; uchar phasecw[8] ={0x01,0x03,0x02,0x06,0x04,0x0c,0x08,0x09};//正转 uchar phaseccw[8]={0x09,0x08,0x0c,0x04,0x06,0x02,0x03,0x01};//反转 //ms延时函数 void delay(uint t) { uint k; while(t--) { for(k=0; k<125; k++); } } void Delay_xms(uint x) { uint i,j; for(i=0;i

void Motor_work(uint t) { uchar i,j; switch(t) { case 0: while(1) {if(stop==0) break; for(i=0;i<8;i++) {MotorData=phasecw[i]; delay(50);//转速调节 } } break; case 1: while(1) {if(stop==0) break; for(j=0;j<8;j++) {MotorData=phaseccw[j]; delay(50);//转速调节 } } break; } } //停止转动 void Motor_test(void) { if(zheng==0) { Delay_xms(10); if(zheng==0) Motor_work(0); } if(fan==0) { Delay_xms(10); if(fan==0) Motor_work(1); } } //主函数 void main(void) {

单片机课程设计---步进电机正反转设计

单片机课程设计课题:步进电机正反转设计 系别:电气与电子工程系 专业: 姓名: 学号 指导老师: 2013年01月09日

一设计目的 1、增进对单片机的感性认识,加深对单片机理论方面的理解; 2、掌握单片机的内部功能模块的应用,如定时器/计数器、中断、片内外存贮器、I/O口、A/D、 3; 4、掌握控制步进电机转动的编程方法。 二设计要求 1、具有速度和转向设定功能; 2、设置开始、停止以及正反转健; 3、转速以及转向有数码管显示(本设计使用的为LCD12864)。 三、总体设计 步进电机是一种将电脉冲转化为角位移的数字控制执行机构。它将电脉冲信号转变成角位移,即给一个脉冲信号,步进电机就转动一个角度,因此非常适合于单片机控制。 步进电机具有控制简便、定位准确等特点。随着科学技术的发展,在许多领域将得到广泛的应用。鉴于传统的脉冲系统移植性不好,本文提出微机控制系统代替脉冲发生器和脉冲分配器,用软件的方法产生控制脉冲,通过软件编程可以任意设定步进电机的转速、旋转角度、转动次数和控制步进电机的运行状态。以简化控制电路,降低生产成本,提高系统的运行效率和灵活性。 步进电机的角位移与输入脉冲数严格成正比,因此,当它转动一周后,没有累计误差,具有良好的跟随性。由步进电机与驱动电路组成的开环数控系统,既非常简单、廉价,又非常可靠。同时,它也可以与角度反馈环节组成高性能的闭环数控系统。步进电机的动态响应快,易于起停、正反转及变速。速度可在相当宽的范围内平滑调节,低速下仍能保证获得大转矩。步进电机只能通过脉冲电源供电才能运行,它不能直接使用交流电源和直流电源。步进电机存在振荡和失步现象,必须对控制系统和机械负载采取相应的措施。步进电机自身的噪声和振动较大,带惯性负载的能力较差。 步进电机是自动控制系统中常用的执行部件。步进电机的输入信号为脉冲电流,它能将输入的脉冲信号转换为阶跃型的角位移或直线位移,因而步进电机可看作是一个串行的数/模转换器。由于步进电机能够直接接受数字信号,而不需数/模转换,所以使用微机控制步进电机显得非常方便。 步进电机有以下优点: (1)通常不需要反馈就能对位置和速度进行控制; (2)位置误差不会积累; (3)与数组设备兼容,能够直接接收数字信号; (4)可以快速启停。 步进电机的品种规格很多,按照它们的结构和工作原理可以划分为磁阻式(也称反应式或变磁阻式)电机、混合式电机、永磁式电机和特种电机等四种主要型式。步进电机不需位移传感器就可精确定位,所以在精确定位系统中应用广泛。目前打字机、计算机外部设备、数控机床、传真机等设备中都使用了步进电机。

步进电机正反转控制及转速显示

/***************************************************** 程序调试成功 *********************************************************/ #include #define uchar unsigned char #define uint unsigned int sbit wale = P1^4; sbitdula = P1^5; sbitjia_key=P3^3; sbitjian_key=P3^2; sbitZ_key=P3^0; sbitF_key=P3^1; sbit Z_LED=P1^0; sbit F_LED=P1^1; sbit J_LED=P1^2; sbit JA_LED=P1^3; uint flag; ucharnum,show_num=2,maichong=4,table_begin; uchar code SHU[10]={0x3f,0x06,0x5b,0x4f, 0x66,0x6d,0x7d,0x07,0x7f,0x6f};//共阳数码管驱动信号0---9,不显示 uchar code table[]={0xf1,0xf3,0xf2,0xf6,0xf4,0xfc,0xf8,0xf9,0xf1,0xf9,0xf8,0xfc,0xf4,0xf6,0xf2,0xf3};//电机正反转 void delay(uchar x) { uint y; for(;x>0;x--) for(y=0;y<124;y++); } void display() //显示函数 { uint a; a=num; if(a<10) a=a+1; else a=a%10; wale=1; P0=0xfb; wale=0; dula=1; P0=SHU[(num/10)]; dula=0; delay(10);

步进电机正反转程序

步进电机正反转程序 #include //51芯片管脚定义头文件 #include //内部包含延时函数 _nop_(); #define uchar unsigned char #define uint unsigned int uchar code FFW[8]={0x01,0x03,0x02,0x06,0x04,0x0c,0x08,0x09}; //四相八拍正转编码 uchar code REV[8]={0x09,0x08,0x0c,0x04,0x06,0x02,0x03,0x01}; ////四相八拍反转编码 sbit K1 = P3^2; //正转 sbit K2 = P3^3; //反转 sbit K3 = P3^4; //停止 sbit BEEP = P3^6; //蜂鸣器 /********************************************************/ /* /* 延时t毫秒 /* 11.0592MHz时钟,延时约1ms /* /********************************************************/ void delay(uint t) { uint k; while(t--) {

for(k=0; k<125; k++) { } } } /********************************************************** / void delayB(uchar x) //x*0.14MS { uchar i; while(x--) { for (i=0; i<13; i++) { } } } /********************************************************** / void beep() { uchar i; for (i=0;i<100;i++) { delayB(4); BEEP=!BEEP; //BEEP取反

步进电机正反转程序 一

步进电机正反转程序一 #include <reg51.h> //51芯片管脚定义头文件 #include <intrins.h> //内部包含延时函数_nop_(); #define uchar unsigned char #define uint unsigned int uchar code FFW[8]={0x01,0x03,0x02,0x06,0x04,0x0c,0x08,0x09}; //四相八拍正转编码 uchar code REV[8]={0x09,0x08,0x0c,0x04,0x06,0x02,0x03,0x01}; ////四相八拍反转编码 sbit K1 = P3^2; //正转 sbit K2 = P3^3; //反转 sbit K3 = P3^4; //停止 sbit BEEP = P3^6; //蜂鸣器 /********************************************************/ /* /* 延时t毫秒 /* 11.0592MHz时钟,延时约1ms /* /********************************************************/ void delay(uint t) { uint k; while(t--) { for(k=0; k<125; k++) { } } } /**********************************************************/ void delayB(uchar x) //x*0.14MS { uchar i; while(x--) { for (i=0; i<13; i++) { } } } /**********************************************************/

基于单片机原理的步进电机的正反转程设计报告书

基于单片机原理的步进电机的正反转程设计报告书

电机控制课程设计报告书题目基于单片机原理的步进电机的正反转

目录....................................................................... 错误!未定义书签。摘要...................................................................... 错误!未定义书签。 1.概述................................................................... 错误!未定义书签。 1.1课程设计的任务和要求 ............................ 错误!未定义书签。 1.2设计思路框架............................................ 错误!未定义书签。 1.3设计方案的模块解释................................ 错误!未定义书签。 2.系统硬件设计 ..................................................... 错误!未定义书签。 2.1单片机最小系统原理介绍 ........................ 错误!未定义书签。 2.1.1 AT89C51的工作原理 ....................... 错误!未定义书签。 2.1.2复位电路的工作原理 ...................... 错误!未定义书签。 2.1.3晶振电路的工作原理 ...................... 错误!未定义书签。 2.2电机驱动电路原理介绍 ............................ 错误!未定义书签。 3.系统软件设计 ..................................................... 错误!未定义书签。 3.1系统流程图 ............................................... 错误!未定义书签。 3.2系统程序分析............................................ 错误!未定义书签。4.调试过程与结果 .............................................. 错误!未定义书签。5.总结与体会 ...................................................... 错误!未定义书签。 6.参考资料............................................................. 错误!未定义书签。 7.附录.................................................................... 错误!未定义书签。

步进电机正反转

步进电机控制设计 摘要 步进电机是一种将电脉冲转化为角位移的执行机构。当步进驱动器接收到一个脉冲信号,它就驱动步进电机按设定的方向转动一个固定的角度(称为“步距角”),它的旋转是以固定的角度一步一步运行的。可以通过控制脉冲个数来控制角位移量,从而达到准确定位的目的;同时可以通过控制脉冲频率来控制电机转动的速度和加速度,从而达到调速的目的。结合对步进电机的了解,然后对步进电机的控制原理包括步进电机的控制方式和驱动方式作了系统的说明,采用8051单片机来控制步进电机,并给出了步进电机的双相三拍控制单片机控制和三相六拍的单片机控制的具体实现方法,用汇编程序进行控制运行。控制系统通过单片机存储器、I/O接口、中断、键盘、LED显示器的扩展、步进电机的环形分频器、驱动及保护电路、人机接口电路、中断系统及复位电路、单电压驱动电路等的设计,实现了四相步进电机的正反转,急停等功能。 电机的控制系统由AT80C51单片机控制,具有抗干扰能力强,可靠性高而且系统扩展容易等优势。本次课程设计中着重于通过控制脉冲数来控制位移,实现准确定位。基于步进电机本身的优越性和应用的广泛性,这正是用单片机控制步进电机课程设计的实际意义。 关键字:步进电机 ,角位移,单片机 ,脉冲

目录 1 课题描述 (1) 2总体实现原理 (1) 3 步进电机原理及硬件设计 (2) 3.1 单片机电路 (2) 3.1.1 AT89C51单片机的组成结构 (2) 3.1.2 AT89C51单片机的引脚及功能 (4) 3.2步进电机 (6) 3.2.1 步进电机的工作原理 (6) 3.2.2控制原理 (7) 3.2.3步进电机的驱动方式 (8) 3.2.4最小系统 (9) 3.3输入显示部分 (10) 3.4 电源 (10) 4 软件程序设计 (11) 4.1 主程序的设计 (11) 4.2 定时中断设计 (12) 4.3 外部中断设计 (13) 4.4 系统软件程序 (14) 总结 (19) 致谢 (20) 参考文献 (21)

(步进电机正反转)DOC

课程设计报告 题 目 步进电机正反转控制系统的设计 课 程 名 称 微机原理及应用 院 部 名 称 龙蟠学院 专 业 电气工程及其自动化 班 级 M12电气工程及其自动化 学 生 姓 名 葛忠恺 学 号 1221109023 课程设计地点 C304 课程设计学时 20 指 导 教 师 李国利 金陵科技学院教务处制

步进电机是将电脉冲信号转变为角位移或线位移的开环控制元件,具有快速启动能力,定位精度高,能够直接接受数字量,因此被广泛地应用于数字控制系统中,如数模转换装置、精确定位、计算机外围设备等,在现代控制领域起着非常重要的作用。 本设计基于Proteus 7.8设计环境,运用了8086 CPU芯片以及74273芯片、74244芯片和步进电机以及7位小功率驱动芯片ULN2003A、按钮、指示灯等辅助硬件电路,设计了步进电机正反转及调速系统。绘制软件流程图,进行了软件设计并编写了源程序,最后对软硬件系统进行联合调试。该步进电机的正反转及调速系统具有控制步进电机正反转的功能,还可以对步进电机进行调速,不同的按钮对应不同的速度,并且在没有速度按钮按下的时候,步进电机自动切换到停止状态。 关键词:步进电机;正反转;调速控制;ULN2003A芯片;8086微机系统

一、概述 1.1 课程设计的目的 (4) 1.2课程设计的要求 (4) 二、总体设计方案及说明 2.1 系统总体设计方案 (5) 2.2系统工作框图 (5) 三、系统硬件电路设计 3.1 Intel 8086 微处理器的简介 (6) 3.2 步进电机的原理 (7) 3.3 ULN2003A的简介 (8) 3.4 74154芯片简介 (9) 3.5 74LS273芯片简介 (10) 3.6 8086最小系统的设计 (11) 3.7 步进电机及其驱动电路的设计 (12) 3.8 电机状态显示电路的设计 (12) 3.9 输入采样电路的设计 (13) 3.10系统总电路图 (14) 四、系统软件部分设计 4.1 系统流程图 (15) 4.2 系统软件源程序 (16) 4.2.1电机绕组通电顺序设定 (16) 4.2.2 延时子程序设计 (16) 4.2.3 汇编源程序及说明 (16) 五、总结 5.1 系统软硬件的联合调试 (21) 5.2 问题分析和解决方案 (23) 5.3 心得与体会 (23) 六、参考文献 (23) 附录:总电路图 (25)

步进电机正反转控制C语言程序只为初学者

步进电机正反转控制C 语言程序只为初学者公司标准化编码 [QQX96QT-XQQB89Q8-NQQJ6Q8-MQM9N]

只为初学者的步进电机正反控制程序 #include<> #define uchar unsigned char #define uint unsigned int #define MotorData P2 //步进电机控制接口定义 sbit zheng=P3^0; sbit fan=P3^1; sbit stop=P3^2; uchar phasecw[8] ={0x01,0x03,0x02,0x06,0x04,0x0c,0x08,0x09};//正转uchar phaseccw[8]={0x09,0x08,0x0c,0x04,0x06,0x02,0x03,0x01};//反转//ms延时函数 void delay(uint t) { uint k; while(t--) { for(k=0; k<125; k++); } } void Delay_xms(uint x) { uint i,j; for(i=0;i

void Motor_work(uint t) { uchar i,j; switch(t) { case 0: while(1) {if(stop==0) break; for(i=0;i<8;i++) {MotorData=phasecw[i]; delay(50);//转速调节 } } break; case 1: while(1) {if(stop==0) break; for(j=0;j<8;j++) {MotorData=phaseccw[j]; delay(50);//转速调节 } } break; } } //停止转动 void Motor_test(void) { if(zheng==0) { Delay_xms(10); if(zheng==0) Motor_work(0); } if(fan==0) { Delay_xms(10); if(fan==0) Motor_work(1); } } //主函数 void main(void) {

步进电机正反转及调速设计

步进电机正反转及调速设计 陈超 渭南师范学院物理与电气工程系2008级电气(1)班 摘要:本系统用52系列单片机和LY-36电机驱动芯片并加入了按钮来控制步进电机实现转向、转速等。系统中使用的四相步进电机,相应的驱动和控制电路对于其整体性能起着非常重要的作用。经系统调试,能够很好的控制步进电机的正反转、加减速,从而达到预期目的。整个系统具有结构简单、可靠性高、成本低和实用性强等特点,具有较高的通用性和应用推广价值。 关键词:四相步进电机 52单片机控制 YL-36驱动电路正反转 1 绪论 1.1 概述 步进电机作为执行元件,是机电一体化的关键产品之一,广泛应用在各种自动化系统中,与其他类型的电机相比具有易于精确控制,无累积误差等优点。步进电机是一种将电脉冲转化为角位移的执行机构。当步进驱动器接收到一个脉冲信号,就驱动步进电机按设定的方向转一个固定的角度,它的旋转是以固定的角度一步一步运行的,可以通过控制脉冲个数来控制角位移量,从而达到准确定位的目的;同时可以通过控制脉冲频率来控制电机转动的速度和加速度,从而达到调速的目的。步进电机可以作为一种控制用的特种电机,利用其没有累积误差的特点,广泛应用于各种开环控制。 单片机又称单片微控制器,它不是完成某一个逻辑功能的芯片,而是把一个计算机系统集成到一个芯片上,用它来做一些控制电器一类不是很复杂的工作[1]。单片机内部也用和电脑功能类似的模块,比如CPU,内存,并行总线,还有和硬盘作用相同的存储器件。 本文设计一种用STC89C52作为核心部件进行逻辑控制及信号产生的步进电机控制系统。为使步进电机系统的可靠性、通用性、可维护性以及性价比最优,根据系统的功能要求,通过单片机存储器、I/O口、中断、键盘、LED显示器的扩展来实现步进电机的启停、正反转、加减速等功能。 1.2 步进电机及单片机的发展趋势 步进电机的发展,将依赖于新型材料的应用、设计手段,以及与驱动技术的最佳匹配。随着自动控制技术、计算机网络通信技术在众多领域中的快速发展,以及进一步数字化、智能化,步进电机将会在更深入广泛的领域中得意应用。电

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