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

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

摘要

步进电机是将电脉冲信号转变成角位移的执行机构,其转速、停止位置只与脉

冲信号的频率和脉冲数有关,具有误差小,易控制等特点,广泛应用于机械、电子、

纺织、化工、石油等行业。尤其是在医疗行业中,比如在X 光扫描方面,都会用到

电机,步进电机的优点使其成为医疗行业里最为适用的电机。本设计中的多轴控制

系统可以运用在X 光扫描仪等多种仪器上。

本设计选用STC89C55RD+型单片机作为核心控制单元,实现M35SP-7 型步进电机的多轴运动控制,并通过RS232 串口实现与上位PC 机通讯功能。设计中运用单

片机软件编程方式实现步进电机环形分配器功能,用P1.0 口、P1.1 口、P1.2 口和

P1.3 口分别控制四相步进电机的A 相、B 相、C 相和D 相绕组的通电顺序,软件上采用查表方法实现单双八拍工作方式环形脉冲分配。步进电机驱动部分采用

ULN2003A 驱动芯片,实现功率放大,驱动步进电机。最后使用Proteus 软件绘制

了单片机控制步进电机多轴运动的原理图。上述设计经实验验证是有效可行的。

关键词单片机,步进电机,多轴运动,串口通讯

Abstract

Stepper motor is an implementing mechanism that convert the electronic pulse into

angle displacement.Its speed and the stop position only about the frequency and pulse several of the pulse signal,its characteristics are minor error,easy to control and so on,it

is widely applied to mechanical, electronic, textile, chemical, oil, etc. Especially in the

medical industry,such as an x-ray scanning,need motors.Stepper motor's advantages

make it become the most suitable medical industry machine.The multi-axis control system in the design can be used on a variety of instruments such as an x-ray scanning.

This design choose STC89C55RD + SCM as the core of the control unit,to realize

M35SP-7 type stepper motor's multi-axis control,and use RS232 serial to realize PC communication function.This design use SCM software programming realize stepper

motor circular distribution function,P1.0, P1.1, P1.2 and P1.3 respectively controlling

A, B, C and D phases' electricity order on the four phase step motor's.Software is used

on look-up table method teak eight single working way circular pulse distribution.This

design use ULN2003A realize power amplifier to drive stepper motor.Finally using Proteus to draw the principle diagram of the SCM control stepper motor multi-axis motion.The above design experiments showed is effective and feasible.

Keywords:SCM, Stepper Motor, Multi-axis motion, serial communication

目录

第一章引言 (1)

1.1 选题背景 (1)

1.2 研究意义 (1)

1.3 发展状况 (2)

1.4 课题主要研究的内容 (3)

第二章控制系统硬件设计 (4)

2.1 单片机控制系统原理 (4)

2.1.1 单片机的种类 (4)

2.1.2 单片机的发展历程 (4)

2.1.3 51 单片机的引脚安排 (5)

2.1.4 单片机的结构 (7)

2.2 步进电机 (11)

2.2.1 M35SP-7 步进马达的性能参数 (12)

2.2.2 步进电机原理 (13)

2.2.3 驱动控制系统组成 (18)

2.2.4 步进电机的应用 (21)

2.2.5 步进电机的单片机控制 (22)

2.2.6 步进电机的多轴联动 (23)

2.3 ULN2003A驱动芯片 (24)

第三章上位机通讯设计 (26)

3.1 RS232 通信 (26)

3.1.1 RS232 的电气特性 (27)

3.1.2 连接器的机械特性 (28)

3.1.3 RS232 的接口信号 (30)

第四章系统的软件设计 (34)

4.1 单片机程序设计 (34)

4.2 程序实现与调试 (34)

第五章结论与展望 (37)

5.1 结论 (37)

5.2 展望 (37)

参考文献 (38)

致谢 (40)

附录 (41)

声明 (48)

第一章引言

1.1 选题背景

不仅在大型工业中,在医疗过程中也需要机械的帮助,利用步进电机的多轴控制可以让医疗设备精确的扫描人体的各个部位,为治疗带来更精确的数据来正确、快速的治疗病人。

[1]

步进电机是将电脉冲信号转变成角位移的执行机构,其转速、停止位置只与脉冲信号的频率和脉冲数有关,具有误差小,易控制等特点,广泛应用于机械、电子、纺织、化工、石油等行业。本课题拟采用51 单片机系统作为核心控制单元,实现多轴步进电机的运动控制,同时扩展串口通讯功能(RS232),实现上位计算机对多轴运动系统的远程控制。

1.2 研究意义

步进电机是一种重要的执行装置,广泛用于工业控制和各种办公设备中,步进电机运行的稳定可靠直接关系到工业控制的精度和设备的质量,特别是在高精度数控系统中更是要求步进电机能够精确运行。在非超载的情况下,电机的转速、停止的位置只取决于脉冲信号的频率和脉冲数,而不受负载变化的影响,即给电机加一个脉冲信号,电机则转过一个步距角。这一线性关系的存在,加上步进电机只有周期性的误差而无累积误差等特点。使得在速度、位置等控制领域用步进电机来控制变的非常的简单。虽然步进电机已被广泛地应用,但步进电机并不能像普通的直流电机,交流电机在常规下使用。它必须由双环形脉冲信号、功率驱动电路等组成控制系统方可使用。因此用好步进电机却非易事,它涉及到机械、电机、电子及计算机等许多专业知识。如何实现对步进电机的精确可靠控制成为工业控制等系统中的关键技术。多年来很多专家学者研制出很多性能较好的步进电机控制系统,然而,早期的步进电机控制系统体积大,使用的元器件多,这给系统的可靠运行带来了较大的隐患。随着电子技术的发展,许多功能单元都走向模块化和数字化,并且具有体积小,重量轻,工作可靠性高,成本低等优点,而且能够实现多轴控制,这给步进电机控制系统的设计带来了很大的方便。步进电机实现多轴控制后会带来很多方便,多个轴同时运动可以减少操作时间,增加操作精度,这将为医疗等行业提供很大的方便。

1.3 发展状况

[3]

步进电机最早在1920 年由英国人开发,20 世纪50 年代后期晶体管的发明也逐渐应用在步进电机上。步进电动机的发展与计算机工业和数字控制技术密切相

关,产品按结构划分有磁阻式、永磁式和混合型等多种形式。近年来,伴随着微电

子技术大功率电力电子器件及驱动技术的进步,发达国家已普遍使用性能优越的混

合式步进电机,最典型的产品是二相8 极50 齿的电动机,步距角1.80/0.90(全步/半步);还有五相十极50 齿和一些转子100 齿的二相和五相步进电动机,五相

电动机主要用于运行性能较高的场合。驱动技术采用恒相电流与细分驱动相结合,

使步进电机在中、小功率控制系统内的精度提高,并逐步向高速大功率应用领域渗

透。步进电动机最大的生产国是日本,如日本伺服公司、东方公司、SANYO DENKI 和MINEBEA及NPM公司等,特别是日本东方公司,无论是电动机性能和外观质量还是生产手段,都是世界上最好的。我国对步进电动机的研究从1958 年开始,20 世纪

70 年代以前受苏联的影响,以三相磁阻式步进电动机为主,如20 世纪60 年代末

为快走丝数控线切割机床研制的BFl840-75,一直延续生产到现在。20 世纪70 年

代受到国内研制生产数控机床和其他数控设备的推动,并受到当时日本数控机床系

统的影响,开始发展磁阻式步进电动机的系列产品,以定子6 个极、转子40 齿的

三相磁阻式电动机为主,还有定子10 个极、转子100 齿的五相磁阻式电动机和四

相电动机等。20 世纪80 年代开始发展混合式步进电动机,以定子8 极、转子50

齿的二相(四相)混合式步进电动机为主。1987 年开始自行设计定子10 极、转子50

齿的五相混合式步进电动机,同时还发展了一些不同于国外的非典型产品,如定子

8 极、转子60 齿的二相(四相)混合式步进电动机。这是为了与磁阻式步进电动机

的步距角相一致。转子200 齿的五相混合式步进电动机,转子100 齿的九相(--相)

混合式步迸电动机,主要特点是具有高分辨率和可变步矩角。经过多年的发展,

步进电机形成一种品种规格繁多的局面,如表1-1 所示。

步进电机

按工作原理区分按输出转

速区分

按相数区

按运动方

式区分

按结构区

电反永

磁应磁

式式式

式快

功三四五六 M 旋直

切滚

率相相相相相转线

面动

型运运运

动动动

单多

段段

式式

线

式表1-1 步进电机分类

其中最主要的产品系列,一是20 世纪70 年代形成的磁阻式步进电动机系列产品在低端应用仍有较多的市场;二是混合式步进电机的系列产品,包括引进技术和

生产设备,按照国外的设计生产的二相和五相混合式步进电机,以及国内自行开发

生产的混合式步进电动机,仍然拥有各自不同的应用领域,短期内很难统一到几个

限定的规格品种上。

1.4 课题主要研究的内容

本课题拟采用51 单片机系统作为核心控制单元,实现多轴步进电机的运动控制,同时扩展串口通讯功能(RS232),实现上位计算机对多轴运动系统的远程通讯。设计中包括设计基于单片机的步进电机多轴控制系统硬件原理图,完成单片机软件

程序调试,实现上位机通过串口通讯步进电机运动功能。

第二章控制系统硬件设计

2.1 单片机控制系统原理

单片机微型计算机是微型计算机的一个重要分支,也是颇具生命力的机种。单

[2]

片机微型计算机简称单片机,特别适用于控制领域,故又称为微控制器。

通常,单片机由单块集成电路芯片构成,内部包含有计算机的基本功能部件:

中央处理器、存储器和I/O 接口电路等。因此,单片机只需要和适当的软件及外部

设备相结合,便可成为一个单片机控制系统。

2.1.1 单片机的种类

Intel 公司8 位:MCS-48 、MCS-51 16 位MCS-96、MCS-196 ;Motorola 公司、68 系列68HC 系列;TI 公司MSP 系列等。其中MCS-51 系列、AT89 系列被誉为"控制领域中最佳8 位单片机"。

MCS-51 系列具有特性:①集成度高②系统结构简单③可靠性高④处理功能

强,速度快。可分为:8031、8051、8751、8951。

8051 是MCS-51 系列单片机的典型产品

8051 单片机包含中央处理器、程序存储器(ROM)、数据存储器(RAM)、定时/计

数器、并行接口、串行接口和中断系统等几大单元及数据总线、地址总线和控制总

线等三大总线。

2.1.2 单片机的发展历程

单片机大致经过4 个阶段,

第一阶段(1971-1974)1974 年11 月美国Intel 公司首先设计出Intel 4004 接

后设计出Intel 8008 从此拉开了研制单片机的序幕

第二阶段(1974-1978) 初级单片机阶段

第三阶段(1978-1983)好性能单片机阶段

第四阶段(1983-现在) 8 位单片机巩固发展及16 位单片机推出阶段

纵观单片机近30 年的发展历程,认为单片机今后将向多功能、共性能、高速

度、低电压、低功耗、低价格、外围电路内装化以及片内存储容量增加的方向发展。

此外,专用化也是单片机的一个发展方向,针对某一用途的专用单片机将会越来越

多。

2.1.3 51 单片机的引脚安排

8051 单片机的引脚安排如图2-1 所示。

这些器件具有以下的特点:

1.采用HMOS 工艺, 单5V 电源供电;

2.有4K 字节片内程序存储器(ROM);

3. 有128 个字节的片内数据存储器(RAM);

4.4 组通用寄存器, 每组8 个(R0-R7);

5.128 个可由用户定义的软件标志位;

6.64K 字节外部程序存储器空间和64K 字节外部数据存储器空间的寻址能力;

7.晶振为12MHz 时,指令周期为12 s;

8.32 条I/O 线, 构成4 个八位个行口(P0-P3);

9.一个多种工作方式的高速可编程串行口;

10.两个多种工作方式的16 位定时器/计数器;

11.五个中断源, 两级优先权中断结构;

12. 全深度堆栈用于子程序链接和数据存储;

13.有直接按字节或按位寻址能力;

14.可进行二进制或十进制运算;

15.带符号数溢出检测和奇偶计数;

16.硬件乘法和除法;

17.布尔处理器;

18.与8048 系列软件向上兼容。

图2-1(a)8051 单片机的引脚图图2-1(b)8051 单片机逻辑图

8051 片内有4K 字节的掩膜ROM,其程序在芯片制作时即行固化。软件成本较

低, 但程序不能改变, 适于批量产品生产。

[3]

2.1.4 单片机的结构

图2-2 所示为MCS-51 内部结构框图, 它是由中央处理单元CPU, 两种类型存

储器(数据存储器RAM 和程序存储器ROM 或EPROM),I/O 端口, 方式、状态、数据寄存器以及各种外设功能所需之随机逻辑组成的。这些基本单元通过八位内部总线

相互通讯, 当存储器或I/O 需要扩充时, 内部总线可通过I/O 端口缓冲与外部相

连。

图2-2 51 单片机内部结构框

2.1.4.1 中央处理器单元CPU

CPU的主要部件是一个八位算术逻辑运算单元ALU与之相关的寄存器A,B,PSW,

[4,5]

和SP。另外还有16 位程序计数器PC和数据寄存器DPTR 。

(1)算术逻辑单元ALU

ALU 负责执行算术和逻辑运算。包括加、减、乘、除四则运算l 逻辑与(AND)、

或(OR)、异或(Exclutiive-OR)以及循环移位、清除、取反等。ALU 可以进行程序

分枝判断,并且能够为系统内数据传送提供数据通路和暂存寄存器。其他指令则是

以这些基本功能为基础建造的。加法可使寄存器增1 或者自动计算程序的目的地

址;减法则可寄存器递减或比较两个变量的大小。

MCS-51 结构的独特功能是可以单独或同时进行八位和一位两种类型数据的操

作。单独一位可以置1、清零、取反、传送、测试和用于逻辑运算。因此MCS-51

特别适于作控制用。

(2)指令系统概述

MCS-51 的111 条指令,按操作可分成算术运算,对字节变量的逻辑运算,数

据传送,布尔变量运算,程序控制和机器控制等五大类。MCS-51 指令系统可使用

户程序在空间和速度两个方面均能达到较高的效率。MCS-51 的单字节指令占44%,双字节指令占41%,三字节指令占15%,如果使用12MHz 晶振,绝大多数指令可在1—2μs 内完成。即便是8 位乘、除法也仅需4μs。许多指令具有长、短两种形式,

程序员可根据特殊的应用优选。MCS-51 通常在每个周期内取两次操作码,因此使

用短形式可大大加速程序运行。MCS-51 的指令丰富,寻址灵活,易于产生面向控

制的软件。对于某给定任务来说,字节寻址和按位寻址方式的结合可使程序大大缩

短,这就导致软件开销降低,可靠性提高,设计周期加速。

(3)累加器和PSW

8051 也是一个以累加器为基础的结构。八位累加器A 保存源操作数和接收算

术指令(加、减、乘、除)的执行结果。对于逻辑运算和一些特殊的数据传送,包

括查表和外部RAM 扩充等指令累加器可作为源或目的操作数。此外也赋给了累加器

某些独特的功能;循环移位、奇偶计算、0 测试等。

许多指令在操作过程中隐含或明显地影响到几个状态标志,或受这些标志的影

响。所谓程序状态字PSW 即为这些标志的组合。如图2-3 所示。

CY AC FO RS1 RS0

OV --- P

图2-3 PSW 寄存器

最活跃的状态位是进位标志C。它为多字节的加、减和循环移位提供了可能性。此外C 标志乃是布尔处理器的累加器。一位逻辑运算和位传送指令必须通过C 标志

进行。溢出位(OV),可在带符号整数运算时检测算术溢出。奇偶标志(P),始终反

映累加器中1 的个数。MCS-51 用偶校验,即A 和P 中1 的个数必须是偶数。该标

志位在每个指令周期的末尾用累加器内容的偶校验更新。RS1,RS0 两位通过软件

写成不同数值可在四个寄存器组中进行选择。如两者均为0 则选中0 组,两者均为

1 则选中第3 组通用寄存器。FO 和PSW-1(PSW 的次低位)为用户定义标志。

(4)其他寄存器

寄存器B 用于乘法和除法运算。除法指令中A 为被除数,B 为除数。执行后A

为商,B 为余数。乘法指令执行后,A 保存A、B 乘积的低8 位,B 保存高8 位。如无乘除运算B 可提供8 个通用标志位。

MCS-51 的硬件堆栈设在内部RAM 中,通常用于子程序链接和在程序中传递参数,暂存变量或在中断服务期间保存状态。堆栈指针(SP)为八位指针寄存器,它指

示压入堆栈中最后一个字节的地址。在执行PUSH 或POP 指令以及所有的子程序调

用和返回过程中自动地增1 或减1。理论上,8051 的堆栈可有128 个字节的深度。

系统复位后,堆栈指针约定值为07H,数据从08H 单元开始压入。但通过改变指针

寄存器的内容,可将堆栈设置在内部RAM 的任何地方。

称为数据指针的16 位寄存器(DPTR),在间接跳、查表或外部数据传送指令中,

作为基址寄存器。DPTR 的高8 位(DPH),低8 位(DPL)可单独操作。

2.1.4.2 存储器空间

MCS-51 系统中,程序存储器和数据存储器空间是分立的。每类存储器都有不

同的寻址机构,不同的控制信号和不同的功能。程序存储器阵列(ROM 或EPROM)用

于存储系统通电之后所需的信息:初始化数据、校准常数、键盘格局表等以及程序

本身。即使掉电这些信息也不会丢失。程序存储器用16 位地址总线,以程序计数

器PC 寻址。8051 内部程序存储器的地址为OOOOH—OFFFH。数据存储器用于存储变量,上电后处于随机状态,在程序进行时才会确定或改变。片内RAM 为128 字节,

地址为OOH~7FH。因此寻址片内RAM 的地址寄存器只要一个字节宽度即可。

但是程序存储器和数据存储器都可向片外扩充,使用相同的地址和数据总线和

不同的控制信号。PSEN 为外部程序存储器的读选通信号。RD 和WR 分别为外部数据存储器的读和写信号。两种存储器均可扩充至64K 字节。

[6]

Intel单片机不属于冯·诺曼计算机结构/数据存储器,不可用以存放程序。

当然这对控制用是有利的,但不利于软件开发和调试。为此我们将两个分立的片外

存储器合二为一,即片外RAM亦可存放程序,这样就必须将PSEN和RD两个低电平有

效的信号经与门输出,即负逻辑相或,作为外存估器的读信号,读存储陈列中的指

令或数据,而用WR信号写数据。

除存储阵列之外,尚有一些物理地址空间离散地分布在片内80H—FFH 范围内。

这些称为特殊功能寄存器,前面已讨论过了A、B、SP、PSW、DPH 和DPL。其他还

有4 个端口和外设功能寄存器,将在后面说明。

综上所述,MCS-51 的物理地址空间有:片内程序存储器,片内数据存储器和

特殊功能寄存器,片外强序存储器和片外数据寄存器。

2.1.4.3 输入/输出端口

MCS-51 的I/O 端口功能极强。32 个I/O 引脚组成四个8 位并行口(PO、P1、P2 和P3)。每个引脚在软件控制下可输入或输出数据,并且可按字节或按位访问。

在不同的操作和扩充的方式中,某些I/O 引脚亦可用于执行特殊输入、输出功

能。访问片外存储器之指令以PO 端口为地址/数据复用线,在片外存储器周期的

开始阶段,8 位地址通过PO 端口输出;然后在相同的引脚上传送数据。如片外数

据传送指令要求16 位地址,则高8 位地址通过P2 口输出。

P3 口的8 位引脚均有特殊功能,两个外部中断INT0,INT1。两个计数器输入

TO,T1,两个串行数据线TXD(发送),RXD(接收);两个定时控制选通R D(读),WR(写)。当然P3 电可作通用I/O 口。

即便在同一端口内,共I/O 功能亦可以多种方式来组合,在同一时问用不同引

脚作输入、输出,或同一引脚在不同时刻作输入、输出;在某种情况下,为并行操,

在另一种情况下,为串行操作;或用作测试脚,或作为其他特殊功能脚等等。

2.1.4.4 特殊外设功能

在面向控制的计算机系统中,有若干项特殊要求:定时;保留信号跳晓的一次

计数;测量输入脉冲的精确宽度;同其他系统或人进行通讯;密切监视异步外部事

件的发生等。因此微处理器应该只有定时器/计数器,异步收发器(USART)或中断

控制器等部件来满足上述要求,8051 集成了所有这些能力在同一芯片上!

(1)定时器/计数器

8051 有两个16 位定时器/计数器,每一个均由高字节和低字节组成。这些寄

存器称作THO、TLO、TH1 和TL1,每一对都可以通过方式寄存TMOD 和控制寄存器TCON 由软件编程设定多种工作方式。定时器可用于测量时间问隔,脉冲宽度,初

始事件等,具有1 s 的分辨牢,最大定时间隔为65536 个机器周期(晶振12MHz

时,大于65ms)。长延时很容易通过软件积累而得。作为计数器,同样的硬件,可

对从DC~500KHz 频率的外部事件进行计数,精确到16 位。

(2)串行口

MCS-51 内含一个高速全双工串行口。通过软件编程为四种基本的工作方式:

移位寄存器I/O 扩展器,8 位UART,9 位UART 或多机通讯链。UART 方式可同标准I/O 设备(例如CRT、电传打字机、调制解调器)接口,波特率为122~31K 波特。

如果通讯中需要进行奇校验或偶校验,那么可通过简单的位处理软件程序实现。串

行口工作方式由寄存器SCON 控制。通过串行口很容易同标准RS-232 接口的微机实

现分布式通迅系统。

[7]

(3)中断能力和控制

中断能力通常被看作是CPU 的功能。但从应用的角度看,中断同外设和系统接

口的关系更为密切。这些外设功能允许专用硬件来监视实时信号接口而不打扰CPU。8051 有5 个中断源:一个串行口发送或接收完成时发束的I}I 断;两个计数溢出

时由定时器/计数器发来的中断,两个由输入引脚INTo, INT1 发来的外部中断O

和外部中断1。每个中断源均可单独的开放与禁止和被设定为高优先级和低优先级。

高优先权的中断源能打断低优先权的程序。这些由IE(中断允许)和IP(优先权

寄存器)来控制。

每个中断源的服务程序均有一个固定的入口地址(即中断向量):

外部中断0 定时器0 外部中断1 定时器1 串行口0003H 000BH 0013H 001BH 0023H

当响应一个事件的中断请求时,CPU 自动地执行一个内部子程序调用到相应地址,用户程序起始于该单元,然后执行特定的中断服务程序,完成中断服务之后,返

回到后台任务。

2.2 步进电机

步进电机是把数字信息直接转换为角位移的控制元件,具有精确步进、快速起

[8]

停和控制简便等特点,广泛应用于各种精密机械、自动化控制系统等领域,是机

电一体化的关键部件之一。步进电机起动、停止时的加、减速特性直接影响数控系统的平稳性和精确性,因此,实现过渡过程最短的加减速运动是实现高精、高效的

[12]

关键,是数控研究的重点之一。郭新贵等针对传统的直线加减速和指数加减速在进给过程中存在柔性冲击的缺点,提出了一种适用于高速进给的新型柔性加减速算法,完全避免了柔性冲击。许良元研究了数控加工中的加减速控制曲线,提出了加减速方式及算法的选择会影响到数控系统的运动精度、加工精度和运行效率。

在非超载的情况下,电机的转速、停止的位置只取决于脉冲信号的频率和脉冲数,而不受负载变化的影响,当步进驱动器接收到一个脉冲信号,它就驱动步进电机按设定的方向转动一个固定的角度,称为"步距角",它的旋转是以固定的角度

一步一步运行的。可以通过控制脉冲个数来控制角位移量,从而达到准确定位的目的;同时可以通过控制脉冲频率来控制电机转动的速度和加速度,从而达到调速的目的。

本设计采用M35SP-7 步进马达

2.2.1 M35SP-7 步进马达的性能参数

条目

额定电压

工作电压

额定电压/相位

相数

线圈直流电阻

步进角

励磁方式

绝缘等级

持续扭矩

拉出扭矩

拉进扭矩

最大拉出脉冲率最大拉进脉冲率

M35SP-7 步进马

直流6V

直流 5.4~6.6V

最大807mA

4 相

7.5°/步

直流24V

直流21.6~26.4V

517mA

4 相

50Ω

7.5°/步

2-2 相激励(单极运行)

E 级

29.4mN·m

18.1mN·m/200pps

17.6mN·m/200pps

770pps

710pps

表2-1 M35SP-7 步进马达的规

E 级

34.3mN·m

31.4mN·m/200pps

30.9mN·m/200pps

1050pps

850pps

尺寸:

图2-4 M35SP-7 步进马达的尺寸

2.2.2 步进电机原理

[9]

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

的情况下,电机的转速、停止的位置只取决于脉冲信号的频率和脉冲数,而不受负

载变化的影响,即给电机加一个脉冲信号,电机则转过一个步距角。这一线性关系

的存在,加上步进电机只有周期性的误差而无累积误差等特点。使得在速度、位置

等控制领域用步进电机来控制变的非常的简单。

2.2.2.1 反应式步进电机原理

(1)电机的结构:

电机转子均匀分布着很多小齿,定子齿有三个励磁绕阻,其几何轴线依次分别

与转子齿轴线错开0、1/3T、2/3T,(相邻两转子齿轴线间的距离为齿距以T 表示),

即A 与齿1 相对齐,B 与齿2 向右错开1/3T,C 与齿3 向右错开2/3T,A'与齿5 相对齐,(A'就是A,齿5 就是齿1)下面是定转子的展开图:

图2-5 定转子展开图

(2)电机的旋转:

如A相通电,B,C相不通电时,由于磁场作用,齿1 与A对齐,(转子不受任何

[10]

力,以下均同)。

如B 相通电,A,C 相不通电时,齿2 应与B 对齐,此时转子向右移过1/3T,此时齿3 与C 偏移为1/3T,齿4 与A 偏移(T-1/3T)=2/3T。

如C 相通电,A,B 相不通电,齿3 应与C 对齐,此时转子又向右移过1/3T,此时齿4 与A 偏移为1/3T 对齐。

如A 相通电,B,C 相不通电,齿4 与A 对齐,转子又向右移过1/3T。

这样经过A、B、C、A分别通电状态,齿4(即齿1 前一齿)移到A相,电机转

子向右转过一个齿距,如果不断地按A,B,C,A??通电,电机就每步(每脉冲)

[10]

1/3T,向右旋转。如按A,C,B,A??通电,电机就反转。

由此可见:电机的位置和速度由导电次数(脉冲数)和频率成一一对应关系。

而方向由导电顺序决定。

不过,出于对力矩、平稳、噪音及减少角度等方面考虑。往往采用A-AB-B-BC

-C-CA-A 这种导电状态,这样将原来每步1/3T 改变为1/6T。甚至于通过二相电流

不同的组合,使其1/3T 变为1/12T,1/24T,这就是电机细分驱动的基本理论依据。

不难推出:电机定子上有m 相励磁绕阻,其轴线分别与转子齿轴线偏移

1/m,2/m??(m-1)/m,1。并且导电按一定的相序电机就能正反转被控制——这是步

进电机旋转的物理条件。只要符合这一条件我们理论上可以制造任何相的步进电

机,出于成本等多方面考虑,市场上一般以二、三、四、五相为多。

(3)电机的力矩:

电机一旦通电,在定转子间将产生磁场(磁通量Ф)当转子与定子错开一定角

度产生力F 与(dФ/d )成正比S 其磁通量Ф=Br*S。Br 为磁密,S 为导磁面积。

F 与L*D*Br 成正比,L 为铁芯有效长度,D 为转子直径。Br=N·I/R,N·I 为励磁

绕阻安匝数(电流乘匝数)R 为磁阻。力矩=力*半径

力矩与电机有效体积*安匝数*磁密成正比(只考虑线性状态)。因此,电机有效体积越大,励磁安匝数越大,定转子间气隙越小,电机力矩越大,反之亦然。

图2-6 电机的力矩示意图

2.2.2.2 感应子式步进电机

(1)特点:

感应子式步进电机与传统的反应式步进电机相比,结构上转子加有永磁体,以

[11]

提供软磁材料的工作点,而定子激磁只需提供变化的磁场而不必提供磁材料工作点的耗能,因此该电机效率高,电流小,发热低。因永磁体的存在,该电机具有较

强的反电势,其自身阻尼作用比较好,使其在运转过程中比较平稳、噪音低、低频

振动小。

感应子式步进电机某种程度上可以看作是低速同步电机。一个四相电机可以作

四相运行,也可以作二相运行。(必须采用双极电压驱动),而反应式电机则不能如

此。例如:四相,八相运行(A-AB-B-BC-C-CD-D-DA-A)完全可以采用二相八拍运

行方式.不难发现其条件为C= ,D= .

一个二相电机的内部绕组与四相电机完全一致,小功率电机一般直接接为二

相,而功率大一点的电机,为了方便使用,灵活改变电机的动态特点,往往将其外

部接线为八根引线(四相),这样使用时,既可以作四相电机使用,可以作二相电

机绕组串联或并联使用。

(2)分类

感应子式步进电机以相数可分为:二相电机、三相电机、四相电机、五相电机

等。以机座号(电机外径)可分为:42BYG(BYG 为感应子式步进电机代号)、57BYG、86BYG、110BYG、(国际标准),而像70BYG、90BYG、130BYG 等均为国内标准。

(3)步进电机的静态指标术语

相数:产生不同对极N、S 磁场的激磁线圈对数。常用m 表示。

拍数:完成一个磁场周期性变化所需脉冲数或导电状态用n 表示,或指电机转

过一个齿距角所需脉冲数,以四相电机为例,有四相四拍运行方式即

AB-BC-CD-DA-AB,四相八拍运行方式即A-AB-B-BC-C-CD-D-DA-A.

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

子齿数J*运行拍数),以常规二、四相,转子齿为50 齿电机为例。四拍运行时步

距角为θ=360 度/(50*4)=1.8 度(俗称整步),八拍运行时步距角为θ=360 度/

(50*8)=0.9 度(俗称半步)。

定位转矩:电机在不通电状态下,电机转子自身的锁定力矩(由磁场齿形的谐

波以及机械误差造成的)。

静转矩:电机在额定静态电作用下,电机不作旋转运动时,电机转轴的锁定力

[10] 矩。此力矩是衡量电机体积(几何尺寸)的标准,与驱动电压及驱动电源等无关。

虽然静转矩与电磁激磁安匝数成正比,与定齿转子间的气隙有关,但过份采用

减小气隙,增加激磁安匝来提高静力矩是不可取的,这样会造成电机的发热及机械

噪音。

(4)步进电机动态指标及术语:

1、步距角精度:

步进电机每转过一个步距角的实际值与理论值的误差。用百分比表示:误差/

步距角*100%。不同运行拍数其值不同,四拍运行时应在5%之内,八拍运行时应在

单片机控制步进电机和数码管显示

一、设计任务书 设计内容:用80C51单片机设计一个步进电机控制器 设计要求: 1.用8015设计一个四相步进电机。 2.可控制步进电机的启动与停止,正转与反转。 3.10档速度调节。 4.点动控制。 5.可显示电机运行参数。 二、设计总体方案 (一)控制方式的选择 控制主要用于电机速度和方向的转换。控制方式有按键控制和开关控制两种。按键较开关而言,操作更加简便,故选按键控制。 方案一:独立按键。独立按键可自由连接,线路简单。 方案二:编码式键盘。编码式键盘的按键接触点接于74LS148芯片。当键盘上没有闭合时,所有按键都断开,当某一键闭合时,该键对应的编码由74LS148输出。 本次设计所需按键不多,不需要采用复杂编码,考虑硬件条件、线路连接和经济性等方面,选择方案一。 (二)电机电路设计方案的选择 由于条件的限制,对于电机的选择只能是实验台上最小步距角18°的电机,其中已包含了驱动电路。 (三)单片机的选择 方案一:AT89C51高性能8位单片机,内部集成CPU、存储器、寄存器、I/O接口,从而构成较为完整的计算机,价格便宜。 方案二:C8051F005单片机,该单片机是完全集成的混合信号系统及芯片,具有8051兼容的微控制器内核,与MCS-51指令集完全兼容。除了具有标准8052的数字外设部件,片内还继承了数据采集和控制系统中常用的模拟部件和其他数字外设及功能部件,执行速度快,但价格较贵。 本次课程设计是在仿真环境下进行,没有太过考虑单片机选择的问题,但就设计本身来讲,从物美价廉的角度考虑,选择方案一较合适。 (四)显示方案的选择 方案一:采用LED数码管。LED数码管是轮流现实的,其利用人烟的视觉暂留特性,使人感觉不到数码管闪动,看到每只数码管都常亮。利用其显示必须不停给数码管数据输入口循环赋值,显示内容较多,编程和接线较为复杂。 方案二:采用LCD1602液晶显示器。LCD1602具有功率小,效果明显,变成容易等优点,且它最多能显示2×16个字符,可以轻松满足设计要求。 由上可知,LCD1602液晶显示器的优点突出,故选择方案二。 (五)软件部分的选择 软件部分的选择主要是指编程语言的选择,编译调试工具根据设计平台选择伟福软件。编程语言主要有以下两种方案。

四相步进电机控制系统设计资料讲解

四相步进电机控制系 统设计

课题:四相五线单4拍步进制电动机的正反转控制专业:机械电子工程 班级:2班 学号: 20110259 姓名:周后银 指导教师:李立成 设计日期: 2014.6.9~2014.6.20 成绩:

1概述 本实验旨在通过控制STC89C52芯片,实现对四相步进电机的转动控制。具体功能主要是控制电机正转10s、反转10s,连续运行1分钟,并用1602液晶显示屏显示出来。 具体工作过程是:给系统上电后,按下启动开关,步进电机按照预先 实验具体用到的仪器:STC89C52芯片、开关单元、四项步进电机、等硬件设 备。 实验具体电路单元有:单片机最小系统、步进电机连接电路、开关连接电路、1602液晶显示屏显示电路。 2四相步进电机 2.1步进电机 步进电机是一种将电脉冲转化为角位移的执行机构。电机的转速、停止的位置只取决于脉冲信号的频率和脉冲数,而不受负载变化的影响,即给电机加一个脉冲信号,电机则转过一个步距角。 2.2步进电机的控制 1.换相顺序控制:通电换相这一过程称为脉冲分配。 2.控制步进电机的转向控制:如果给定工作方式正序换相通电,步进 电机正转,如果按反序通电换相,则电机就反转。

3.控制步进电机的速度控制:如果给步进电机发一个控制脉冲,它就 转一步,再发一个脉冲,它会再转一步。两个脉冲的间隔越短,步进电机就转得越快。 2.3步进电机的驱动模块 ABCD四相工作指示灯指示四相五线步进电机的工作状态 2.4步进电机的工作过程 开关SB接通电源,SA、SC、SD断开,B相磁极和转子0、3号齿对齐,同时,转子的1、4号齿就和C、D相绕组磁极产生错齿,2、5号齿就和D、A相绕组磁极产生错齿。当开关SC接通电源,SB、SA、SD断开时,由于C相绕组的磁力线和1、4号齿之间磁力线的作用,使转子转动, 1、4号齿和C相绕组的磁极对齐。而0、3号齿和A、B相绕组产生错齿,

基于51系列单片机控制步进电机调速实验 (自动保存的)

基于51系列单片机控制步进电机调速实验 实验指导书 仇国庆编写 重庆邮电大学自动化学院 自动化专业实验中心 2009年2月

基于51系列单片机控制步进电机调速实验 实验目的及要求: 1、熟悉步进电机的工作原理 2、熟悉51系列单片机的工作原理及调试方法 3、设计基于51系列单片机控制的步进电机调速原理图(要求实现电机的速度反馈测量,测量方式:数字测量) 4、实现51系列单片机对步进电机的速度控制(步进电机由实验中心提供,具体型号42BYG )由按钮控制步进电机的启动与停止;实现加速、匀速、和减速控制。速度设定由键盘设定,步进电机的反馈速度由LED 数码管显示。 实验原理: 步进电机控制原理 一般电动机都是连续旋转,而步进电动却是一步一步转动的,故叫步进电动机。步进电机是数字控制电机,它将脉冲信号转变成角位移,即给一个脉冲信号,步进电机就转动一个角度,因此非常适合于单片机控制。步进电机可分为反应式步进电机(简称VR)、永磁式步进电机(简称PM)和混合式步进电机(简称HB)。因此步进电动机是一种把脉冲变为角度位移(或直线位移)的执行元件。步进电动机的转子为多极分布,定子上嵌有多相星形连接的控制绕组,由专门电源输入电脉冲信号,每输入一个脉冲信号,步进电动机的转子就前进一步。由于输入的是脉冲信号,输出的角位移是断续的,所 以又称为脉冲电动机。随着数字控制系统的发展,步进电动机的应用将 逐渐扩大。 步进电机区别于其他控制电机的最大特点是,它是通过输入脉冲信号来 进行控制的,即电机的总转动角度由输入脉冲数决定,而电机的转速由 脉冲信号频率决定。步进电机的驱动电路根据控制信号工作,控制信号 可以由单片机产生。 电机转子均匀分布着很多小齿,定子齿有三个励磁绕阻,其几 何轴线依次分别与转子齿轴线错开。0、1/3て、2/3て,(相邻 两转子齿轴线间的距离为齿距以て表示),即A与齿1相对齐, B与齿2向右错开1/3て,C与齿3向右错开2/3て,A'与齿5相对齐,(A'就是A,齿5就是齿1)下面是定转子的展开图:(图2所示)

基于单片机的步进电机控制系统

编号: 综合智能电子 实训 (论文)说明书题目: 院(系):使用科技学院 专业:电子信息工程 学生姓名: 学号: 指导教师: 2010年 1 月 6 日

目录 引言 第1章简介 1.1 步进电机 第2章步进电机原理 2.1 步进电机的工作原理 2.1.1结构及基本原理 2.1.2 电机的步进顺序 第3章系统的硬件设计 3.1 系统设计方案 3.2 主从机硬件部件介绍 3.2.1A T89S51简介 3.2.2 TGI2864E简介 3.2.3MAX485 串行通信 3.2.4TIP122 3.2.5 MOC70T2 3.3 LCD显示电路设计 3.4 电机驱动模块设计 第4章系统的软件实现 4.1 系统软件主流程图 4.2 系统初始化流程图 4.3 部分子程序 第五章总结 致谢 参考文献 摘要:本文使用单片机、步进电机驱动芯片、字符型LCD和键盘阵列,构建了集步进电机控制器和驱动器为一体的步进电机控制系统。二维工作台作为被控对象通过步进电机驱动滚珠丝杆在X/Y轴方向联动。文中讨论了一种以最少参数确定一条圆弧轨迹的插补方法和步进电机变频调速的方法。步进电机控制系统的开发采用了软硬件协同仿真的方法,可以有效地减少系统开发的周期和成本。最后给出了步进电机控制系统的使用实例。

关键词:步进电机控制系统,插补算法,变频调速,软硬件协同仿真 In this paper, microcontroller, stepper motor driver chips, character LCD and keypad array, build a set of stepper motor controller and driver as one of the stepping motor control system. Two-dimensional table as a charged object by stepper motor drive ball screw in X / Y axis linkage. This paper discusses a minimum of parameters to determine the trajectory of a circular interpolation method and the method of frequency control stepper motor. Stepper motor control system has been developed using the software and hardware co-simulation method, can effectively reduce the system development cycle and cost. Finally, the stepper motor control system application examples.

基于单片机的步进电机控制系统的设计_毕业设计

本科毕业设计 基于单片机的步进电机控制系统的设计

摘要 随着自动控制系统的发展和对高精度控制的要求,步进电机在自动化控制中扮演着越来越重要的角色,区别于普通的直流电机和交流电机,步进电机可以对旋转角度和转动速度进行高精度控制。步进电机作为控制执行元件,是机电一体化的关键组成之一,广泛应用在各种自动化控制系统和精密机械等领域。 步进电机是将电脉冲信号转变为角位移或线位移的开环控制元件。在非超载的情况下,电机的转速、停止的位置只取决于脉冲信号的频率和脉冲数,而不受负载变化的影响,即给电机加一个脉冲信号,电机则转过一个步距角。 本系统介绍了一种基于单片机的步进电机控制系统的设计,包括了硬件设计和软件设计两部分。其中,硬件设计包括单片机最小系统、键盘控制模块、LCD显示模块、步进电机驱动模块、位置检测模块共5个功能模块的设计。系统软件设计采用C语言编写,包括主程序、数字键处理程序、功能键处理程序、电机驱动处理程序、显示模块、位置采集模块。 本设计采用STC89C52单片机作为主控制器,4*4矩阵键盘作为输入,LCD1602液晶作为显示,ULN2003A芯片驱动步进电机。系统具有良好的操作界面,键盘输入步进电机的运行距离;步进电机能以不同的速度运行,可以在不超过最大转速内准确运行到任意设定的位置,可调性较强;显示设定的运行距离和实际运行距离;方便操作者使用。关键词:单片机步进电机液晶显示键盘驱动

Design of the Stepping Motor Control System Based on SCM Qiu Haizhao (College of Engineering, South China Agricultural University, Guangzhou 510642,China) Abstract:With the development of automatic control system and the requirements of high-precision control, stepping motor control in automation is playing an increasingly important role, different from the common DC and AC motor, stepper motor rotation angle and rotational speed can be high-precision controlled. Stepper motor as a control actuator is a key component of mechanical and electrical integration, widely used in a variety of automated control systems and precision machinery and other fields. Stepper motor is the open-loop control components changing electric pulse signals into angular displacement or linear displacement .In the case of non-overloaded, the motor speed, stop position depends only on the pulse frequency and pulse number, regardless of load changes, that is, to add a pulse motor, the motor is turned a step angle. This system introduces a design of stepper motor control system based on single chip microcomputer, including hardware design and software design in two parts. Among them, the hardware design, including single chip minimal system, keyboard control module, LCD display module, the stepper motor drive module, position detection module five functional modules. System software design using C language, including the main program, process number keys, the key of function processes, motor driver handler, the display module, position acquisition module. This design uses STC89C52 microcontroller as the main controller, 4 * 4 matrix keyboard as an input, LCD1602 LCD as a display, ULN2003A chip as stepper motor driver. System has a good user interface, keyboard input stepper motor running distance; Stepper motor can run at different speed, and run to any given position accurately in any speed without exceeding the maximum speed, with a strong adjustable ; Display the running distance and the actual running distance, which is more convenient for the operator to use. Key words: SCM stepper LCD keyboard driver

基于单片机的步进电机驱动控制

基于单片机的步进电机驱动控制 一、步进电机概述 1.步进电机的定义 步进电机指的是以数字脉冲信号作为电机线或教位移的控制信号,并以数字脉冲频率对电机的转速进行控制的动力控制系统。 在负载正常范围的情况下,步进电机的运行状态只和数字脉冲发生器提供的信号的频率和脉冲占空比有关,一般情况下,电机的状态不受负载的影响。电机的运行角度只和每次所给予的脉冲信号强度有关,而电机的运行速度也只和脉冲信号的频率有直接关 系。这种采用弱点控制强电的控制方式使得步进电机在速度、位移等控制领域有着普通电机不能比拟的优势。 2.驱动控制系统框图 步进电机控制系统有着精确控制、运行稳定的特性,这一其他电机不能比拟的优势使得步进电机得到了广泛的应用。而一般对步进电机控制系统的驱动必须要包含脉冲信 号发生部分,功放部分和驱动控制部分等几个模块电路,我们根据这些通过的模块电路,可将步进电机控制系统的通用框图绘制如下: 在上图的步进电机驱动控制系统方框图中,控制步进电机运行状态的脉冲信号一 般由集成芯片产生,可以是单片机、等智能芯片,也可以是一般的数字电路集成芯片。信号分配环节则要根据步进电机的型号来选择,如四相步进电机有四相四拍和四相 八拍种信号分配的方式;两相步进电机有两相四拍和八拍等脉冲加载形式。功放部分 在驱动环节上显得尤为重要。动态平均电流是步进电机转矩大小的决定因素,前提条件 是电机的速度。电机力矩与平均电流成正比,驱动系统对电机的反电势消弱越多,则平 均电流就越大。 我们一般可以用恒压和恒压串电阻的方法来驱动,或者在条件允许的情况下我们可以用高低压驱动、恒流和细分数等方法来驱动实际的应用过程种,多采用数字集成驱 动芯片作为步进电机的驱动手段。 二、现阶段国内外步进电机驱动的常用方式 1.变频器控制方式 使用变频器对步进电机进行驱动控制时,可以很好的解决步进电机在启动和停止时 容易失步的问题,提高了系统的控制精度。但是变频器的应用成本较高,结构和操作也 比较复杂,无形中提高步进电机的控制难度。 2.PLC控制方式 使用ABB、西门子、欧姆龙等国际知名生产制造商研发的系列产品可以 实现对步进电机的理想化控制,但是基于核心的步进电机控制系统成本高昂,且 难以实现精确控制,在本系统中不太适合。 3.单片机控制方式 随着嵌入式系统在工业控制领域中的广泛应用,以单片机特别是系列单片机 作为控制核心的步进电机控制电路在生产生活领域得到了普及,单片机有着大规模数字

完整的单片机控制步进电机程序

#include "reg52.h" #include "INTRINS.H" #include #include #define uint unsigned int #define uchar unsigned char void check_addr(void); /*地址核对*/ uchar code slave_addr[4]={00, 01, 02, 255}; /*从机地址*/ uchar idata T0low, T0high,common_count,input_order,cmd_in_permit,interval; uchar sent_ok,speed_change,start_up,start_end,address_true,i; uint y1; uint code add[100]={60006,62771,63693,64154,64430,64614,64746,64845,64922,64983,65033,65075,651 11,65141,65167,65190,65211,65229,65245,65260,65273,65285,65296,65306,65315,65323,65331 ,65339,65345,65352,65358,65363,65368,65373,65378,65382,65387,65390,65394,65398,65401,6 5404,65407,65410,65413,65416,65418,65421,65423,65425,65428,65430,65432,65434,65435,654 37,65439,65441,65442,65444,65445,65447,65448,65450,65451,65452,65453,65455,65456,65457 ,65458,65459,65460,65461,65462,65463,65464,65465,65466,65467,65468,65469,65469,65470,6 5471,65472,65472,65473,65474,65475,65475,65476,65477,65477,65478,65478,65479,65480,654 80,65481}; sbit P2_0=P2^0; /*作输入步进电机的脉冲信号发送口*/ sbit P2_2=P2^2; /*作输入步进电机的旋转方向信号发送口*/ sbit P1_0=P1^0; /*作串口输出信号的使能口, P1_0=0时接通串口,输出信号*/ sbit WD=P1^7; /*看门狗*/ main() { P2_0=0; P2_2=0; /*步进电机的旋转方向待试验后确定*/ P1_0=1; /*开机时需要关断,串口发送功能,需要时再接通*/ WD=1; /*看门狗先为1,电平翻转为喂狗*/ i=0; common_count=0; cmd_in_permit=0; input_order=0; interval=0; address_true=1; speed_change=0; start_up=0;

步进电机控制系统设计.

毕业设计论文 论文题目:基于单片机的步进电机控制电路板设计 摘要 随着微电子和计算机技术的发展,步进电机的需求量与日俱增,它广泛用于打印机、电动玩具等消费类产品以及数控机床、工业机器人、医疗器械等机电产品中,其在各个国民经济领域都有应用。研究步进电机的控制系统,对提高控制精度和响应速度、节约能源等都具有重要意义。 步进电机是一种能将电脉冲信号转换成角位移或线位移的机电元件,步进电机控制系统主要由步进控制器,功率放大器及步进电机等组成。采用单片机控制,用软件代替上述步进控制器,使得线路简单,成本低,可靠性大大增加。软件编程可灵活产生不同类型步进电机励磁序列来控制各种步进电机的运行方式。 本设计是采用AT89C51单片机对步进电机的控制,通过IO口输出的时序方波作为步进电机的控制信号,信号经过芯片ULN2003驱动步进电机;同时,用 4个按键来对电机的状态进行控制,并用数码管动态显示电机的转速。 系统由硬件设计和软件设计两部分组成。其中,硬件设计包括AT89C51单片机的最小系统、电源模块、键盘控制模块、步进电机驱动(集成达林顿ULN2003)模块、数码显示(SM420361K数码管)模块、测速模块(含霍尔片UGN3020)6个功能模块的设计,以及各模块在电路板上的有机结合而实现。软件设计包括键盘控制、步进电机脉冲、数码管动态显示以及转速信号采集模块的控制程序,最终实现对步进电机转动方向及转动速度的控制,并将步进电机的转动速度动态显示在LED数码管上,对速度进行实时监控显示。软件采用在Keil软件环境下编辑

************* 第1章绪论 1.1 课题背景 当今社会,电动机在工农业生产、人们日常生活中起着十分重要的作用。步进电机是最常见的一种控制电机,在各领域中得到广泛应用。步进电机作为执行元件,是机电一体化的关键产品之一, 广泛应用在各种自动化控制系统中。 随着微电子和计算机技术的发展,步进电机的需求量与日俱增,在各个国民经济领域都有应用。步进电机是一种将电脉冲转化为角位移的执行机构。当步进驱动器接收到一个脉冲信号,它就驱动步进电机按设定的方向转动一个固定的角度(称为“步距角”),它的旋转是以固定的角度一步一步运行的。可以通过控制脉冲个数来控制角位移量,从而达到准确定位的目的;同时可以通过控制脉冲频率来控制电机转动的速度和加速度,从而达到调速的目的。步进电机可以作为一种控制用的特种电机,其优点是结构简单、运行可靠、控制方便。尤其是步距值不受电压、温度的变化的影响、误差不会长期积累的特点,给实际的应用带来了很大的方便。它广泛用于消费类产品(打印机、照相机、雕刻机)、工业控制(数控机床、工业机器人)、医疗器械等机电产品中。研究步进电机的控制和测量方法,对提高控制精度和响应速度、节约能源等都具有重要意义。控制核心采用C51芯片,它以其独特的低成本,小体积广受欢迎,当然其易编程也是不可多得的优点为此,本文设计了一个单片机控制步进电机的控制系统,可以实现对步进电机转动速度和转动方向的高效控制。 1.2 设计目的及系统功能 本设计的目的是以单片机为核心设计出一个单片机控制步进电机的控制系统。本系统采用AT89C51作为控制单元,通过键盘实现对步进电机转动方向及转动速度的控制,并且将步进电机的转动速度动态显示在LED数码管上。 1

51单片机控制四相步进电机解析

51单片机控制四相步进电机 2009年07月21日星期二 12:44 51单片机控制四相步进电机 2009-03-01 18:53 接触单片机快两年了,不过只是非常业余的兴趣,实践却不多,到现在还算是个初学者吧。这几天给自己的任务就是搞定步进电机的单片机控制。以前曾看过有关步进电机原理和控制的资料,毕竟自己没有做过,对其具体原理还不是很清楚。今天从淘宝网买了一个EPSON的UMX-1型步进电机,此步进电机为双极性四相,接线共有六根,外形如下 图所示: 详细内容: https://www.360docs.net/doc/a39616800.html,/31907887_d.h tml

拿到步进电机,根据以前看书对四相步进电机的了解,我对它进行了初步的测试,就是将5伏电源的正端接上最边上两根褐色的线,然后用5伏电源的地线分别和另外四根线(红、兰、白、橙)依次接触,发现每接触一下,步进电机便转动一个角度,来回五次,电机刚好转一圈,说明此步进电机的步进角度为360/(4×5)=18度。地线与四线接触的顺序相反,电机的转向也相反。 如果用单片机来控制此步进电机,则只需分别依次给四线一定时间的脉冲电流,电机便可连续转动起来。通过改变脉冲电流的时间间隔,就可以实现对转速的控制;通过改变给四

线脉冲电流的顺序,则可实现对转向的控制。所以,设计了如下电路图: C51程序代码为: 代码一 #include static unsigned int count; static unsigned int endcount; void delay(); void main(void)

步进电机控制系统课程设计

河北xxxxxx学院 课程设计说明 书 题目:步进电机控制系统 学院(系): 年级专业: 学号: 学生姓名: 同组学生: 指导教师:

步进电机控制系统 设计者:xxxxx 指导老师:xxxx 1摘要: 由于步进电机自身的特点、不需要位置、速度等信号反馈,只需要脉冲发生器产生足够的脉冲数和合适的脉冲频率,就可以控制步进电机移动的距离和速度。步进电机的运转方向的控制为输入电机各绕组的通电顺序。例如,一个三相步进电机的通电顺序为:a—ab—b—bc—c—ca—a--.....,此时点击正转,若通电顺序改为:a—ac—c—cb—b—ba—a--.....时点击反转。既可以通过改变环形分配器的脉冲输出顺序,也可以通过编程改变输出脉冲的顺序,来改变输入到各绕组的通电顺序,达到控制电击方向的目的。 关键词:步进电机 PLC 步进电机驱动器 引言步进电机是一种常用的电气执行原件,一种多相或单相同步点击,在数控机床、包装机械等自动控制及检测仪表等方面得到广泛运用。随着plc的不短发展。其功能越来越强大,除了有简单的逻辑功能和顺序控制外,运算功能的加入、pid和各类高速指令、使得plc对复杂和特殊系统的控制应用更加广泛。Plc与数控技术的结合产生了各种不同类型的数控设备。 2 任务与要求 (1) 了解步进电机的原理 (2) 熟练使用PLC控制步进电机,了解步进电机驱动器原理 3 装置原理介绍 3.1控制系统功能框图 在步进电机控制系统中,首先控制步进电机使之稳步启动,然后高速运动,接近制定位置时,减速之后低速运动一段时间,在准确地停在预定的位置上,最后步进电机停留2s后,按照前进时的加速—高速—减速—低速的步骤返回到起始点,其运动状态转换过程平稳,其功能框图如图3.1所以,其简单工作过程如图3.2所示。 由于步进电机本身的结构特性决定了它要实现高速运转必须有加速过程,如果在启动时突然加载高频脉冲,电机会产生啸叫、失步甚至不能启动,在停止阶段也是这样,当高频脉冲突然降到零时,电机会产生啸叫和振动,所以在启动和停止时,都必须有一个加速和减速过程。 3.2步进电机控制系统硬件设计 由于步进电机的硬件结构特性,所以对输入的脉冲的频率有所限制,对于低频的脉冲输出时,plc可以利用定时器来完成。若要求步进电机的速度较快时,就需要用plc的高速脉冲输出指令,这时就需要在程序中设置相应的步骤来完成对步进电机的控制。 3.21 组建器材 (1)主机plc 根据系统的控制要求,采用三菱FX系统系列的plc作为控制器。(2)限位开关此系统中共用了两个限位开关:左限位开关和右限位开关。这两个限位开关的作用是控制物体的位置,防止物体超出合理的工作范围。 (3)步进电机步进电机是该系统的执行机构

51单片机控制步进电机程序及硬件电路图

#include static unsigned int count; //计数 static int step_index; //步进索引数,值为0-7 static bit turn; //步进电机转动方向 static bit stop_flag; //步进电机停止标志 static int speedlevel; //步进电机转速参数,数值越大速度越慢,最小值为1,速度最快static int spcount; //步进电机转速参数计数 void delay(unsigned int endcount); //延时函数,延时为endcount*0.5毫秒 void gorun(); //步进电机控制步进函数 void main(void) { count = 0; step_index = 0; spcount = 0; stop_flag = 0; P1_0 = 0; P1_1 = 0; P1_2 = 0; P1_3 = 0; EA = 1; //允许CPU中断 TMOD = 0x11; //设定时器0和1为16位模式1 ET0 = 1; //定时器0中断允许 TH0 = 0xFE;

TL0 = 0x0C; //设定时每隔0.5ms中断一次TR0 = 1; //开始计数 turn = 0; speedlevel = 2; delay(10000); speedlevel = 1; do{ speedlevel = 2; delay(10000); speedlevel = 1; delay(10000); stop_flag=1; delay(10000); stop_flag=0; }while(1); } //定时器0中断处理 void timeint(void) interrupt 1 { TH0=0xFE; TL0=0x0C; //设定时每隔0.5ms中断一次count++; spcount--; if(spcount<=0) { spcount = speedlevel; gorun(); } } void delay(unsigned int endcount) { count=0; do{}while(count

步进电机控制系统设计

课程设计任务书 设计题目:微机步进电机控制系统设计 设计目的: 1.巩固和加深课堂所学知识; 2.学习掌握一般的软硬件的设计方法和查阅、运用资料的能力; 3.通过步进电机控制系统设计与制作,深入了解与掌握步进电机的运行方式、方向、速 度、启/停的控制。 设计任务及要求:(在规定的时间内完成下列任务) 任务:控制四相步进电机按双八拍的运行方式运行。按下开关SW1时启动步进电机,按ESC键停止工作。采用循环查表法,用软件来实现脉冲循环分配器的功能 对步进电机绕组轮流加电。 要求对题目进行功能分析(四项功能:快速顺时针旋转,慢速顺时针旋转, 快速逆时针旋转和慢速逆时针旋转),进行步进电机远程控制系统硬件电路设 计,画出电路原理图、元器件布线图、实验电路图;绘制程序流程图,进行 步进电机控制程序设计(采用8086汇编语言);系统调试、运行,提交一个 满足上述要求的步进电机控制系统设计。 时间安排:(部分时间,某些工作可以自己安排重叠进行) 具体要求:设计报告撰写格式要求(按提供的设计报告统一格式撰写), 具体内容如下: ①设计任务与要求②总体方案与说明 ③硬件原理图与说明④实验电路图与说明 ⑤软件主要模块流程图 ⑥源程序清单与注释 ⑦问题分析与解决方案(包括调式记录、调式报告,即在调式过程中遇到的主要问 题、解决方法及改进设想); ⑧小结与体会 附录:①源程序(必须有简单注释)②使用说明③参考资料 指导教师签名:08 年12 月01 日 教研室主任(或责任教师)签名:年月日

目录 第1章需求分析 (1) 1.1课程设计题目 (1) 1.2步进电机介绍 (1) 1.3课程设计任务及要求 (1) 1.4软硬件运行环境及开发工具 (1) 第2章概要设计 (2) 2.1设计原理及实现方法 (2) 2.1.1 步进电机控制原理 (2) 2.1.2微机步进电机控制系统原理图 (2) 2.1.3 运行方式与方向的控制——循环查表法 (3) 2.1.4步进电机的启/停控制——设置开关 (4) 2.2微机步进电机控制系统设计流程图 (4) 第3章详细设计 (5) 3.1 硬件设计与实现 (5) 3.2软件设计 (5) 3.2.1正向慢转子程序 (5) 3.2.2正向快转子程序 (6) 3.2.3反向慢转子程序 (6) 3.2.4反向快转子程序 (6) 3.2.5长延时子程序 (7) 3.2.6短延时子程序 (7) 第4章系统调试与操作说明 (7) 4.1系统调试 (7) 4.2 操作说明 (8) 第5章课程设计总结与体会 (8) 参考文献 (9) 附录微机步进电机控制系统源程序 (9)

51单片机驱动步进电机的方法(详解)

51单片机驱动步进电机的方法2019.02 这款步进电机的驱动电压12V,步进角为7.5度. 一圈360 度, 需要48 个脉冲完成!!! 该步进电机有6根引线,排列次序如下:1:红色、2:红色、3:橙色、4:棕色、5:黄色、6:黑色。 采用51驱动ULN2003的方法进行驱动。 ULN2003的驱动直接用单片机系统的5V电压,可能力矩不是很大,大家可自行加大驱动电压到12V。 ;****************************************************************************** ;*************************步进电机的驱动*************************************** ; DESIGN BY BENLADN911 FOSC = 12MHz 2005.05.19

;--------------------------------------------------------------------------------- ; 步进电机的驱动信号必须为脉冲信号!!! 转动的速度和脉冲的频率成正比!!! ; 本步进电机步进角为7.5度. 一圈360 度, 需要48 个脉冲完成!!! ;--------------------------------------------------------------------------------- ; A组线圈对应P2.4 ; B组线圈对应P2.5 ; C组线圈对应P2.6 ; D组线圈对应P2.7 ; 正转次序: AB组--BC组--CD组--DA组(即一个脉冲,正转7.5 度) ;---------------------------------------------------------------------------------- ;----------------------------正转-------------------------- ORG 0000H LJMP MAIN ORG 0100H MAIN: MOV R3,#144 正转3 圈共144 脉冲 START: MOV R0,#00H START1: MOV P2,#00H MOV A,R0 MOV DPTR,#TABLE MOVC A,@A+DPTR JZ START 对A 的判断,当A = 0 时则转到START MOV P2,A LCALL DELAY INC R0 DJNZ R3,START1 MOV P2,#00H LCALL DELAY1 ;-----------------------------反转------------------------ MOV R3,#144 反转一圈共144 个脉冲 START2: MOV P2,#00H

用单片机控制步进电机

用单片机控制步进电机 步进电机是机电控制中一种常用的执行机构,它的用途是将电脉冲转化为角位移,通俗地说:当步进驱动器接收到一个脉冲信号,它就驱动步进电机按设定的方向转动一个固定的角度(及步进角)。通过控制脉冲个数即可以控制角位移量,从而达到准确定位的目的;同时通过控制脉冲频率来控制电机转动的速度和加速度,从而达到调速的目的。 一、步进电机常识 常见的步进电机分三种:永磁式(PM),反应式(VR)和混合式(HB),永磁式步进一般为两相,转矩和体积较小,步进角一般为7.5度或15度;反应式步进一般为三相,可实现大转矩输出,步进角一般为1.5度,但噪声和振动都很大。在欧美等发达国家80年代已被淘汰;混合式步进是指混合了永磁式和反应式的优点。它又分为两相和五相:两相步进角一般为1.8度而五相步进角一般为 0.72度。这种步进电机的应用最为广泛。 二、永磁式步进电机的控制 下面以电子爱好者业余制作中常用的永磁式步进电机为例,来介绍如何用单片机控制步进电机。 图1是35BY型永磁步进电机的外形图,图2是该电机的接线图,从图中可以看出,电机共有四组线圈,四组线圈的一个端点连在一起引出,这样一共有5根引出线。要使用步进电机转动,只要轮流给各引出端通电即可。将COM端标识为C,只要AC、 C、BC、 C,轮流加电就能驱动步进电机运转,加电的方式可以有多种,如果将COM端接正电源,那么只要用开关元件(如三极管),将A、、B、轮流接地。 下表列出了该电机的一些典型参数: 表1 35BY48S03型步机电机参数 型号步距角相数电压电流电阻最大静转距定位转距转动惯量 35BY48S03 7.5 4 12 0.26 47 180 65 2.5 有了这些参数,不难设计出控制电路,因其工作电压为12V,最大电流为0.26A,因此用一块开路输出达林顿驱动器(ULN2003)来作为驱动,通过P1.4~P1.7来控制各线圈的接通与切断,电路如图3所示。开机时,P1.4~P1.7均为高电平,依次将P1.4~P1.7切换为低电平即可驱动步进电机运行,注意在切换之前将前一个输出引脚变为高电平。如果要改变电机的

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

基于单片机的步进电机控制系统设计 摘要:步进电动机由于利用其组成的开环系统简单、廉价、实用价值高的特点。因此在精度要求比较高的精密仪器以及各种控制装置中有着极其广泛的应用如:喷绘机、刻字机、线切割、机器人等领域。 本文介绍的是一种基于单片机的步进电机的系统设计,用C语言编写出电机的正转、反转、加速、减速、停止程序代码,通过单片机、电机的驱动芯片ULN2003以及相应的按键实现以上操作功能,步进电机的工作状态用相应的LCD1602显示。本文内容介绍了步进电机以及单片机原理、该系统的硬件电路、软件程序。并对软、硬件进行调试,同时介绍了调试过程中出现的问题以及解决问题的方法。该设计具有思路清晰、可靠性高、稳定性强等特点,通过调试实现了上述功能。 关键词:步进电机脉宽调制驱动机构单片机 Abstract: Stepper motor due to the use of the open loop system consisting of a simple, cheap, and the characteristics of high practical value. So in accuracy requirement high precision instrument and various kinds of control device has the extremely widespread application, such as: spraying machine, carving machine, thread cutting, robot, etc. Is introduced in this paper a system based on single-chip stepper motor design, using C language to write the motor forward, reverse, acceleration, deceleration and stop the program code, through single chip, motor drive chip ULN2003 as well as the corresponding button to achieve the above operation function, the working state of the stepper motor with the corresponding LCD1602 display. Content of this article introduces the principle of step motor and single chip microcomputer, hardware circuit and software program of the system. And the hardware and software debugging, and introduces the debugging process problems and the methods to solve the problem. This design has ideas clearly, high reliability, strong stability, etc, through debugging realized the function. Key Words: Stepper motor; Pulse-width modulated; driving mechanism; scm

相关文档
最新文档