单片机 步进电动机控制 设计

合集下载

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

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

摘要本文应用单片机AT89C51和脉冲分配器PMM8713,步进电机驱动器,光电隔离器4N25等,构建了步进电机控制器和驱动器为一体的步进电机控制系统。

通过AT89C51和脉冲分配器PMM8713完成步进电机的各种运行控制方式,实现步进电机在3相6拍的工作方式下的正反转控制和加减速控制。

并通过步进电机丝杠连动,带动XY工作台的直线运动,实现从起点A点到预定点B点的位移控制。

整个系统采用模块化设计,结构简单,可靠,通过人机交互换接口可实现各功能设置,操作简单,易于掌握。

该系统可应用于步进电机在机电一体化控制等大多数场合。

关键词:步进电机单片机控制目录绪论 (1)1、步进电机及其发展 (1)1.1步进电机在我国的发展应用及前景 (2)1.2本文研究内容 (2)2、步进电机的分类、结构、工作原理及特性 (2)2.1步进电机的概念 (2)2.2步进电机的特点 (3)2.3步进电机的结构及工作原理 (3)2.4步进电机的常用术语 (4)3、步进电机的单片机控制 (5)3.1步进电机控制系统组成 (5)3.2步进电机控制系统原理 (6)3.3脉冲分配 (6)3.4步进电机与微型机的接口电路 (8)4、步进电机的运行控制 (9)4.1步进电机的速度控制 (9)4.2步进电机的位置控制 (9)4.3步进电机的加减速控制 (10)5、步进电机的程序设计 (11)5.1程序框图 (11)结论 (13)致谢辞 (13)参考文献 (13)绪论步进电机是将电脉冲信号转变为角位移或线位移的开环控制元步进电机件。

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

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

大学毕业设计 C51程序控制步进电机

大学毕业设计 C51程序控制步进电机

题目:简易步进电机控制步进电机控制摘要:本设计采用ATMEL公司DIP-40封装的AT89S52单片机实现对四相步进电机的手动和按键控制。

由单片机产生的脉冲信号经过分配后分解出对应的四相脉冲,分解出的四相脉冲经驱动电路功率放大后驱动步进电机的转动。

转速的调节和状态的改变由按键进行选择,此过程由程序直接进行控制。

通过键盘扫描把选择的信息反馈给单片机,单片机根据反馈信息做出相应的判断并改变输出脉冲的频率或转动状态信号。

电机转动的不同状态由液晶LCD1602显示出来。

而设计的扩展部分可以通过红外信号的发射由另一块单片机和红外线LED完成,用红外万能接收头接收红外信号,可以实现对电机的控制进行红外遥控。

关键字:四相步进电机单片机功率放大 LCD1602步进电机控制 (1)摘要 (1)关键字 (1)前言 (3)1系统总体方案设计及硬件设计 (4)1.1步进电机 (4)1.1.1 步进电机的种类 (4)1.1.2 步进电机的特点 (4)1.1.3 步进电机的原理 (5)1.2 控制系统电路设计 (7)1.3 液晶显示LCD1602 (7)1.4 AT89S52核心部件及系统SCH原理图 (9)1.5 LN2003A驱动 (10)2软件设计及调试 (13)2.1程序流程 (13)2.2软件设计及调试 (14)3 扩展功能说明 (15)4设计总结 (16)5 设计源程序 (16)6 附录 (21)参考文献 (22)附2:系统原理图及实物图 (23)步进电机广泛应用于对精度要求比较高的运动控制系统中,如机器人、打印机、软盘驱动器、绘图仪、机械阀门控制器等。

目前,对步进电机的控制主要有由分散器件组成的环形脉冲分配器、软件环形脉冲分配器、专用集成芯片环形脉冲分配器等。

分散器件组成的环形脉冲分配器体积比较大,同时由于分散器件的延时,其可靠性大大降低;软件环形分配器要占用主机的运行时间,降低了速度;专用集成芯片环形脉冲分配器集成度高、可靠性好,但其适应性受到限制,同时开发周期长、需求费用较高。

基于AT89S52单片机的步进电动机控制模块设计

基于AT89S52单片机的步进电动机控制模块设计

基于AT89S52单片机的步进电动机控制模块设计文章设计了一种步进电动机控制系统,使用AT89S52单片机控制2相步进电机,由单片机产生驱动脉冲信号,通过按键控制步进电机的启停和步进方向,可根据实际需要对单片机进行编程,并通过Proteus仿真软件对系统进行仿真和测试。

标签:AT89S52单片机;步进电动机;控制引言步进电动机是将电脉冲激励信号转换成相应的角位移或线位移的离散值控制电动机,这种电动机每当输入一个电脉冲就动一步,所以又称脉冲电动机。

步进电动机实际上是一种单相或多相同步电动机。

单相步进电动机由单路电脉冲驱动,输出功率一般很小,其用途为微小功率驱动。

多相步进电动机由多相方波脉冲驱动,在经功率放大后分别送入步进电动机各相绕组。

当向脉冲分配器输入一个脉冲时,电动机各相的通电状态就发生变化,转子会转过一定的角度(称为步距角)。

在非超载的情况下,电动机的转速、停止的位置只取决于脉冲信号的频率和脉冲数,而不受负载变化的影响,即给电动机加一个脉冲信号,电动机则转过一个步距角。

这一线性关系的存在,加上步进电动机只有周期性的误差而无累计误差等特点,使得在速度、位置等控制领域用步进电动机来控制变得非常简单。

本研究利用AT89S52单片机的四路I/O通道实现环形脉冲的分配,控制步进电动机匀速、连续的按固定方向转动,通过按键控制步进电动机的旋转角度。

1 系统设计用AT89S52单片机来作为整个步进电动机控制系统的核心部件,其系统设计总框图如图1所示。

真个系统包括单片机最小系统、电机驱动模块、独立按键模块等。

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

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

步进电机运动控制系统设计

步进电机运动控制系统设计

步进电机运动控制系统设计设计时考虑到CPU在执行指令时可能受到干扰的冲击,导致程序”跑飞”或者进入”死循环”,因此,设计了看门狗电路,使用的是MAXIM公司生产的微处理系统监控集成芯片MAXI813。

本文还详细地给出了相关的硬件框图和软件流程图,并编制了该汇编程序。

步进电机最早是在1920年由英国人所开发。

1950年后期晶体管的发明也逐渐应用在步进电机上,这对于数字化的控制变得更为容易。

以后经过不断改良,使得今日步进电机已广泛运用在需要高定位精度、高分解性能、高响应性、信赖性等灵活控制性高的系统中。

在生产过程中要求自动化、省、效率高的机器中,我们很容易发现步进电机的踪迹,尤其以重视速度、位置控制、需要精确操作各项指令动作的灵活控制性场合步进电机用得最多。

步进电机作为执行元件,是机电一体化的关键产品之一,广泛应用在各种自动化控制系统中。

随着微和技术的发展,步进电机的需求量与日俱增,在各个国民领域都有应用。

步进电机是将电脉冲信号变换成角位移或直线位移的执行部件。

步进电机可以直接用数字信号驱动,使用非常方便。

一般电动机都是连续转动的,而步进电动机则有定位和运转两种基本状态,当有脉冲输入时步进电动机一步一步地转动,每给它一个脉冲信号,它就转过一定的角度。

步进电动机的角位移量和输入脉冲的个数严格成正比,在时间上与输入脉冲同步,因此只要控制输入脉冲的数量、频率及电动机绕组通电的相序,便可获得所需的转角、转速及转动方向。

在没有脉冲输入时,在绕组电源的激励下气隙磁场能使转子保持原有位置处于定位状态。

因此非常适合于单片机控制。

步进电机还具有快速启动、精确步进和定位等特点,因而在数控机床,绘图仪,打印机以及光学仪器中得到广泛的应用。

步进电动机已成为除直流电动机和交流电动机以外的第三类电动机。

传统电动机作为机电能量转换装置,在人类的生产和生活进入电气化过程中起着关键的作用。

步进电机可以作为一种控制用的特种电机,利用其没有积累误差(精度为100%)的特点,广泛应用于各种开环控制。

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

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

重庆科技大学本科毕业论文基于AT89C51单片机的步进电动机控制系统设计考生姓名: XXXXX X 准考证号: XXXXXXXXXXXX 专业层次:本科院(系):XXXXXXXXXXXXXXXXXXX 指导教师: XXXXXX 职称:讲师重庆科技大学二O一二年月日基于AT89C51单片机的步进电动机控制系统设计考生姓名: XXXXXX准考证号: XXXXXXXXXXXX专业层次:本科指导教师: XXXXXXX院(系):机械与动力工程学院重庆科技大学二O一二年九月二十日摘要随着微电子和计算机技术的发展,步进电机的需求量与日俱增,它广泛用于打印机、电动玩具等消费类产品以及数控机床、工业机器人、医疗器械等机电产品中,其在各个国民经济领域都有应用。

研究步进电机的控制系统,对提高控制精度和响应速度、节约能源等都具有重要意义。

步进电机是一种能将电脉冲信号转换成角位移或线位移的机电元件,步进电机控制系统主要由步进控制器,功率放大器及步进电机等组成。

采用单片机控制,用软件代替上述步进控制器,使得线路简单,成本低,可靠性大大增加。

软件编程可灵活产生不同类型步进电机励磁序列来控制各种步进电机的运行方式。

本设计是采用AT89C51单片机对步进电机的控制,通过I/O口输出的时序方波作为步进电机的控制信号,信号经过芯片ULN2003驱动步进电机。

实践证明,基于单片机控制的步进电机比传统的步进控制器具有更好的性能,更加简单、方便、可靠。

本设计的主要研究对象就是开环伺服系统中最常用的执行器件——步进电机。

关键词:步进电机,单片机,正反转控制,键盘控制,LCD液晶显示Based on the AT89C51 single-chip stepper motor controlsystem designABSTRACTWith the development of microelectronics and computer technology, the stepper motor demand grow with each passing day, which is widely used in printers, electric toys and other consumer products, industrial robots and CNC machine tools, medical equipment and other mechanical and electrical products, the national economy in various fields are applied. Study of stepping motor control system, to improve the control precision and response speed, energy saving etc have important significance.A stepper motor can be converted into electric pulse signal of angular displacement or line displacement of the mechanical and electrical components, a stepper motor control system is mainly composed of a stepping controller, a power amplifier and a stepper motor. Using single chip microcomputer control, using software to replace the stepping controller, which has the advantages of simple circuit, low cost, reliability is increased. Software programming can produce different types of step motor excitation sequence to control stepper motor operation mode.This design is the use of AT89C51 single-chip stepper motor control, through the I/O port output timing square wave as a stepper motor control signal, the signal through the ULN2003 chip stepper motor driver.Practice has proved, based on the single chip microcomputer to control the step motor than the traditional stepping controller has better performance, more simple, convenient, and reliable. The design of the main research object is the open loop servo system in the most commonly used executive device -- stepping motor.Keywords:Stepper motor, MCU, Positive control, Keyboard control, LCD liquid crystal display目录中文摘要 (I)英文摘要 (II)1 绪论 (1)1.1 步进电机及其发展 (1)1.2 步进电机在我国的发展应用及前景 (1)1.3 设计研究内容 (2)2 控制系统硬件分析与设计 (3)2.1 步进电机 (3)2.1.1 步进电机的原理 (3)2.1.2 步进电机的特点 (4)2.1.3 步进电机的分类 (4)2.1.4 永磁步进电机的控制原理 (5)2.2 单片机的选择 (6)2.2.1 单片机的引脚功能 (6)2.2.2 主要特性 (6)2.3 步进电机控制系统的组成 (7)2.3.1 键盘控制电路 (7)2.3.2 LCD液晶显示电路 (8)2.3.3 步进电机驱动电路 (10)3 控制系统软件分析与设计 (13)3.1 程序流程图 (13)3.2 读键盘子程序流程图 (14)3.3 键盘处理子程序流程图 (14)3.4 电机控制中断程序流程图 (15)4 调试与改进 (17)4.1 调试与改进 (17)4.2 运行结果 (17)结论 (19)致谢 (20)参考文献 (21)附录一 (22)附录二 (27)论文原创性声明1 绪论1.1 步进电机及其发展步进电机又称为脉冲电动机或阶跃电动机,它是基于最基本的电磁感应作用,将电脉冲信号转变为角位移或线位移的开环控制元件。

单片机控制的步进电动机斩波恒流细分驱动器的实现

单片机控制的步进电动机斩波恒流细分驱动器的实现

单片机控制的步进电动机斩波恒流细分驱动器的实现引言步进电动机是一种将离散的电脉冲信号转化为相应角位移或线位移的电磁机械装置,它输出的角位移与输入的脉冲数成正比,是一种输入与输出脉冲对应的增量驱动元件。

它具有转矩大、惯性小、响应频率高等优点,已经在工业上得到广泛的应用。

但其步矩角较大,一般为1.53,往往满意不了某些高精度定位、精密加工等方面的要求。

实现细分驱动是减小步矩角、提高步进辨别率、增加电动机运行平稳的一种行之有效的方法。

目前步进电动机细分驱动掌握,多采纳量化的梯形波、正弦波作为细分驱动的电流波形,但实际上这些电流波形一般在步进电动机上均不能得到满足的细分精度。

在合理选择电流波形的基础上,提出用at89c52单片机掌握实现的步进电动机斩波恒流细分驱动方案,其运行功率小,牢靠性高,通用性好,细分精度高,具有很强的有用性。

2 细分电流波形的选择及量化步进电动机的细分掌握,从本质上讲是通过对步进电机的励磁绕组中的电流掌握,使步进电动机内部的合成磁场为匀称的圆形旋转磁场,从而实现步进电动机步矩角的细分。

一般状况下,合成磁场矢量的幅值打算了步进电动机旋转力矩的大小,相邻两个合成磁场矢量之间的夹角大小打算了步矩角的大小。

因此,想要实现对步进电机的恒力矩匀称细分掌握,必需合理掌握步进电机绕组中的电流,使电动机内部合成磁场的幅值恒定,而且每个进给脉冲所引起的合成磁场的角度变化也要匀称。

我们知道在空间彼此相差2/m的m 相绕组,分别通以相位上差2/m而幅值相同的正弦电流,则合成的电流矢量便在空间做旋转运动,且幅值保持不便。

这一点对于反映式步进电动机来说比较困难,由于反应式步进电动机来说比较困难,由于反映式步进电动机的旋转磁场只与绕组电流的肯定值有关,而与电流的正反流向无关。

以比较经济合理的方式对步进电机实现步矩角的任意细分,绕组电流波形宣采纳如图1所示的形式<center style="color: rgb(0, 0, 0); font-size: 14px; line-height: 28px; font-family: simsun; orphans: 2; widows: 2;"</center 其中,为电动机转子偏离参考点的角度。

步进电机控制系统设计

步进电机控制系统设计

摘要步进电机是一种将输入的电脉冲信号变换为阶跃性角位移或直线位移的电机,既给一个脉冲信号,电机就转动一个角度或前进一步,故而又称为脉冲电机。

它输出的角位移与输入的脉冲数成正比,转速与脉冲频率成正比。

步近电机必须与驱动器、控制器配套使用才能完成工作要求。

本设计既有硬件电路设计,也包括软件电路设计。

其中硬件电路设计主要有键盘电路,串行显示电路,驱动电路等。

软件设计主要有主程序,键盘扫描子程序,串行显示子程序和延时子程序等。

硬件设计采用57BYG350A型号的步进电机,与其配套的驱动器型号为MS-3H057M系列驱动器。

采用AT89S51单片机对步进电机进行控制,通过4×4矩阵键盘对步进电机的状态进行控制,采用LED数码管来显示步进电机的运行步数和运行速度。

关键字:步进电机,AT89C51,硬件接口电路,软件模块AbstractTread into the electrical engineering(The Stepping Motors) is a kind of electricity pulse signal transformation that will input to jumpssex Cape move or the straight line to move for the rank of electrical engineering, since give a pulse signal, the electrical engineering turns to move an angle or fronts further, hence be called the pulse electrical engineering again.Its output's Cape move with the importation of pulse the number becomes the direct proportion, turning to become the direct proportion with the pulse frequency soon.Tread the near electrical engineering must then can complete the work request with actuator, the controller kit usage.The design of both hardware circuit design, including software design. One major hardware circuit design circuit has a keyboard, serial show circuit, the driver circuit. Software Design main main program, keyboard scanning routines, serial display routines and routines, and so delayed. 57 BYG350A hardware design using models of stepping motor, instead of supporting the drive models for MS-3H057M series drives. AT89S51 microcontroller used to stepping motor control, through the 4 × 4 matrix key board on the status of stepping motor control, the use of LED digital display of the stepping motor running steps and speed.Keyword: stepping motor,AT89S51, Hardware circuit, Software module1 绪论1.1 课题背景步进电机是一种将电脉冲转化为角位移的机电执行元件,每外加一个控制脉冲,电机就运行一步故称为步进电机或脉冲马达。

单片机步进电动机控制系统设计

单片机步进电动机控制系统设计

前言单片机是一个单芯片形态、面向控制对象的嵌入式应用计算机系统。

它的出现及发展使计算机技术从通用型数值计算领域进入到智能化的控制领域。

从此,计算机技术在两个重要领域-—通用计算机领域和嵌入式计算机领域都得到了极其重要的发展,并正在深深地改变着我们的社会。

采用8031单片机控制步进电机,可实现步进电动机正反转控制和步进电动机的无级调速。

分析了步进电机的工作原理,讨论了系统硬件和软件的设计方法,并给出了步进电机的四相八拍单片机控制的具体实现方法。

该系统操作简单,降低了成本,提高了系统的可靠性。

步进电机具有控制方便和体积小等特点,因此在智能仪表和位置控制中得到了广泛的应用。

近年来大规模集成电路的发展以及各种单片机的迅速发展和普及,为设计功能强、价格低的步进电机控制驱动器提供了先进的技术和充足的资源.步进电动机是一种将电脉冲信号转换成相应角位移或线位移的电动机,它的运行需要专门的驱动电源,驱动电源的输出受外部的脉冲信号控制。

每一个脉冲信号可使步进电机旋转一个固定的角度,这个角度称为步距角。

脉冲的数量决定了旋转的总角度,脉冲的频率决定了电动机旋转的速度,改变绕组的通电顺序可以改变电机旋转的方向。

在数字控制系统中,它既可以用作驱动电动机,也可以用作伺服电动机.它在工业过程控制中得到广泛的应用,尤其在智能仪表和需要精确定位的场合应用更为广泛。

1 单片机的基本知识1。

1 概述单片微型计算机简称单片机,由于它的结构及功能均是按工业控制要求设计的,所以其确切的名称应是单片微控制器(Single Chip Microcontroller).它是把微型机算计的各个功能部件:中央处理器CPU、随机存储器RAM、只读存储器ROM、并行I/O接口、定时器/计数器及串行通信接口等集成在一块芯片上,构成一个完整的微型计算机系统,故又把它称为单片微型计算机系统(Single Chip Microcomputer).由于单片机面对的是测控对象,突出的是控制功能,所以它从功能和形态上来说都是应控制领域应用的要求而诞生的.随着单片机技术的发展,它在芯片内集成了许多面对测控对象的接口电路,如ADC、DAC、高速I/O口、PWM、WDT等。

单片机步进电机控制程序代码

单片机步进电机控制程序代码

单片机步进电机控制程序代码引言:步进电机是一种常见的电机类型,它具有准确的位置控制和高速运动的特点,在许多应用中被广泛使用。

为了实现步进电机的精确控制,我们需要编写相应的单片机控制程序代码。

本文将介绍一种常见的单片机步进电机控制程序代码,并详细解析其实现原理和使用方法。

一、控制原理:步进电机通过控制电流的方向和大小来控制转子的运动,常见的步进电机控制方式有两相和四相控制。

本文将以四相控制为例进行介绍。

四相控制是指通过控制四个线圈的电流状态来控制步进电机的运动。

具体控制方式有全步进和半步进两种。

全步进模式下,每一步都是四个线圈中的两个同时激活;半步进模式下,每一步都是四个线圈中的一个或两个同时激活。

在本文中,我们将介绍半步进模式的控制程序代码。

二、程序代码:下面是一段常见的单片机步进电机控制程序代码:```c#include <reg51.h>sbit A1 = P1^0;sbit A2 = P1^1;sbit B1 = P1^2;sbit B2 = P1^3;void delay(unsigned int t){unsigned int i, j;for (i = 0; i < t; i++)for (j = 0; j < 120; j++);}void main(){unsigned int i;unsigned char step[8] = {0x01, 0x03, 0x02, 0x06, 0x04, 0x0C, 0x08, 0x09};while (1){for (i = 0; i < 8; i++){P1 = step[i];delay(1000);}}}```三、代码解析:1. 引用头文件reg51.h,该头文件定义了单片机51的寄存器等相关信息。

2. 定义了四个IO口A1、A2、B1、B2,分别对应步进电机的四个线圈。

3. 定义了一个延时函数delay,用于控制电机转动的速度。

单片机课程设计步进电机

单片机课程设计步进电机

单片机课程设计-步进电机江南大学物联网工程学院课程设计报告课程名称:单片机原理及应用设计题目:基于单片机的步进电机控制器设计班级:姓名:学号:指导教师:评分:年月日基于单片机的步进电机控制器设计摘要:本设计是用80C52单片机作为核心部件进行逻辑控制及信号产生,用单片机技术和C 语言编程设计来进行步进电机的控制。

通过人手动按开关实现步进电机的启动与停止、步进电机的正转反转,加速及减速等功能,此外还有LCD 数码管进行实时显示功能。

同时本文也通过了proteus软件的仿真,在仿真结果中能看出近似真实的效果。

经过proteus仿真,结果表明,系统实现了要求。

该系统电路简单,可靠性强,运行稳定。

关键词:步进电机单片机LCD proteus 仿真1课题主要研究内容和要求本设计采用单片机80C52来作为整个步进电机控制系统的运动控制核心部件。

所选的步进电机是四相五线的,由于步进电机需要高功率驱动,单片机不能与步进电机直接相连,因此我们需要采用了电机驱动芯片ULN2003连接步进电机和单片机。

为了显示步进电机转速,我用数码管来显示速率。

再加上一些独立按键来实现步进电机调速、改变转向的功能。

这样就构成了一个基本的步进电机控制系统。

系统的具体功能和要求如下:1、电机转速可以平稳控制;2、通过键盘和显示器可以设置电机的转速;3、能显示电机的运动趋势;2所需仪器设备所需器件备注所需器件备注STC89C52一片12M晶振一个单片机ULN2003驱一片按键五个动芯片八位共阳数一片异步电机一个码管芯片不同阻值电若干+5V电源一个阻30pF电容两个3系统总体设计本设计的硬件电路包括独立按键控制模块、步进电机驱动模块、数码管显示模块和单片机最小系统四部分。

单片机最小系统由时钟电路和复位电路组成,保证单片机正常运行;独立按键控制模块由开关和按键组成,当按下按键时,该系统就按照该按键控制的功能运作;显示模块主要是为了显示电机的工作状态和转速;驱动电路主要是对单片机输出的脉冲进行功率放大,从而驱动电机转动。

基于单片机AT89C52的步进电机的控制器设计

基于单片机AT89C52的步进电机的控制器设计

基于单片机AT89C52的步进电机的控制器设计步进电机是一种非常常见的电机类型,由于其具有精准定位、适应高速运动以及控制简单等特点,被广泛应用于各种自动化设备中。

本文将从步进电机的工作原理、控制方式以及基于单片机AT89C52的步进电机控制器设计等方面展开阐述。

首先,我们来了解步进电机的工作原理。

步进电机是一种特殊的同步电动机,它具有内置的磁化轭,在没有外部励磁的情况下也能自动旋转。

步进电机的旋转是由控制电流方向和大小来实现的。

通常情况下,步进电机每转动一定角度,称为“步距角”,它可以是1.8度、0.9度、0.45度等,不同的步距角决定了电机的分辨率。

步进电机的控制方式主要有全步进和半步进两种。

全步进是指每次控制信号脉冲后,电机转动一个步距角。

而半步进则是在全步进基础上,在脉冲信号中引入一半步距角的微调。

控制信号脉冲可以是脉冲序列或者方波信号。

基于单片机AT89C52的步进电机控制器设计主要包括控制信号发生器的设计和步进电机驱动电路的设计。

控制信号发生器负责产生相应的控制信号脉冲,而步进电机驱动电路将这些脉冲信号转化为电流信号驱动步进电机。

控制信号发生器的设计可以采用定时器/计数器模块来实现。

AT89C52芯片具有可编程的定时器/计数器,可以用来产生控制信号的脉冲。

通过设置定时器的工作方式和计数值,可以实现不同频率、占空比的控制脉冲。

步进电机驱动电路的设计主要包括功率级驱动电路和电流控制电路。

功率级驱动电路负责将控制信号转化为足够大的电流驱动步进电机,通常采用功率放大器来实现。

电流控制电路则用来控制驱动电流的大小,使步进电机能够顺畅工作。

电流控制电路通常采用可调电阻、电流检测电阻和比较器等元件组成。

在步进电机控制器设计中,还需要考虑到步进电机的特性和应用需求。

例如,步进电机的电源电压、额定电流、阻抗、扭矩等参数需要与驱动电路匹配。

此外,还需要考虑到步进电机的机械结构、位置传感器、防重叠措施等因素。

51单片机驱动步进电机的方法

51单片机驱动步进电机的方法

51单片机驱动步进电机的方法一、步进电机简介步进电机是一种将电脉冲转化为角位移的执行机构,广泛应用于各种自动化设备中。

其工作原理是,当一个脉冲信号输入时,电机转动一个步距角,从而实现电机的精确控制。

二、51单片机驱动步进电机的方法1、硬件连接需要将51单片机与步进电机连接起来。

通常,步进电机需要四个引脚,分别连接到单片机的四个GPIO引脚上。

同时,还需要连接一个驱动器来提高电机的驱动能力。

2、驱动程序编写接下来,需要编写驱动程序来控制步进电机的转动。

在51单片机中,可以使用定时器或延时函数来产生脉冲信号,然后通过GPIO引脚输出给电机。

同时,还需要设置电机的步距角和转向,以保证电机的精确控制。

3、示例程序以下是一个简单的示例程序,用于演示如何使用51单片机驱动步进电机:cinclude <reg52.h> //包含51单片机的头文件sbit motorPin1=P1^0; //定义连接到P1.0引脚的电机引脚sbit motorPin2=P1^1; //定义连接到P1.1引脚的电机引脚sbit motorPin3=P1^2; //定义连接到P1.2引脚的电机引脚sbit motorPin4=P1^3; //定义连接到P1.3引脚的电机引脚void delay(unsigned int time) //延时函数unsigned int i,j;for(i=0;i<time;i++)for(j=0;j<1275;j++);void forward(unsigned int step) //正转函数motorPin1=0;motorPin2=0;motorPin3=0;motorPin4=0; //清零电机引脚delay(step); //延时一段时间motorPin1=1;motorPin3=1;motorPin2=0;motorPin4=0; //设置转向和步距角delay(step); //延时一段时间void backward(unsigned int step) //反转函数motorPin1=0;motorPin2=0;motorPin3=0;motorPin4=0; //清零电机引脚delay(step); //延时一段时间motorPin2=1;motorPin4=1;motorPin3=0;motorPin1=0; //设置转向和步距角delay(step); //延时一段时间void main() //主函数unsigned int step=1000; //设置步距角为1000微步forward(step); //正转一圈backward(step); //反转一圈while(1); //循环等待,保持电机转动状态在这个示例程序中,我们使用了四个GPIO引脚来控制步进电机的转动。

基于C51单片机步进电机综合控制实验

基于C51单片机步进电机综合控制实验

重庆工商大学计算机与信息工程学院学院《单片机原理及应用》课程实验报告实验名称:步进电机综合控制实验实验班级:2010级自动化专业班级:2010级自动化三班指导老师:文远熔组员:陶园2010133330 王路2010133344江洋2010133335陈娅2010133326张琴芳2010133317张丹2010133320(组长)一、摘要:本实验利用8051单片机达到控制步进电机的启动、停止、正转、反转、点动、转过指定角度、状态显示和数据指示的目的,使步进电机控制更加灵活。

步进电机驱动芯片采用ULN2003,ULN2003具有大电流、高电压,外电路简单等优点。

利用ZLG7290模块驱动LED数码管显示速度设定值。

通过这个单片机控制系统的设计来掌握步进电机的工作原理和驱动过程以及LED显示原理和ZLG7290模块的使用方法,用LED数码管显示实验要求的状态结果,设计电路的硬件接线图和实现上述要求的程序。

关键词:51单片机步进电机ZLG7290 ULN2003二、设计内容与要求:1、任务介绍:实现步进电机按规定的速度正转、反转,转过指定的角度,要有点动功能。

所有命令通过键盘输入,步进电机在运行过程中要有状态和数据指示。

2、每套设计文档应包括:系统原理说明、程序框图、电路原理图和程序清单。

三、实验器件介绍及原理:本实验采用单片机来控制步进电机,实现了软件与硬件相结合的控制方法。

在单片机环境下,用ULN2003驱动芯片驱动步进电机,用ZLG7290芯片作用下的按键控制步进电机的运行,从而达到实验要求。

其控制框图(图一)为:图一:控制框图1、系统硬件介绍1.1步进电机1.1.1相关的技术指标:a、相数:指电机内部的线圈组数,目前常用的有二相、三相、四相、五相步进电机,本实验用的是四相步进电机。

电机相数不同,其步距角也不同。

b、步距角:表示控制系统每发一个步进脉冲信号,电机所转动的角度。

本实验程序运行前要先测量步进电机的步距角。

单片机控制步进电机的原理

单片机控制步进电机的原理

单片机控制步进电机的原理
单片机控制步进电机是通过对步进电机的相序进行控制,从而实现不同的转动效果。

步进电机通常由定子和转子组成,定子上的绕组接通不同的电流即可实现不同的步进角度。

在单片机控制步进电机过程中,首先需要电源为步进电机提供工作电压。

然后,通过单片机的输出引脚来控制步进电机驱动器的相序,驱动器根据接收到的相序信号,将不同的电流通入步进电机的不同相序绕组,从而引起转子的步进运动。

单片机通常会配置一个时序驱动器,用来产生相序信号。

时序驱动器内部会保存一个相序表,包含所有可能的相序组合。

单片机通过改变时序驱动器的输入信号,来改变驱动器输出的相序信号,从而实现对步进电机的控制。

在实际应用中,单片机一般使用脉冲信号来驱动步进电机。

每个脉冲信号会引起步进电机转动一个固定的角度,这个角度取决于步进电机的结构特性,如步距角等。

通过改变脉冲信号的频率和相序,可以控制步进电机的转速和转向。

例如,正转时,依次给出相序A、B、C、D;反转时,依次给出相序D、C、B、A。

这样,单片机通过控制相序信
号的变化,就能控制步进电机的运动模式。

除此之外,单片机还可以结合其他传感器信息来实现更复杂的步进电机控制。

例如,通过接收光电传感器的信号,可以实现步进电机在指定位置停止;通过接收陀螺仪的信号,可以实现
步进电机的姿态控制等。

总之,单片机控制步进电机的原理是通过改变步进电机的相序,从而控制步进电机的转动效果。

这样的控制方式简单可靠,广泛应用于各种工业自动化和机器人控制领域。

MSP430单片机_步进电机与直流电机控制设计

MSP430单片机_步进电机与直流电机控制设计

MSP430单片机_步进电机与直流电机控制设计步进电机和直流电机是常用于控制系统中的电机类型,它们在工业自动化、机器人、医疗设备等领域有着广泛的应用。

本文将重点介绍MSP430单片机控制步进电机和直流电机的设计。

步进电机是一种将电脉冲信号转化为角位移或线性位移的电机,它具有定步进角、驱动简单、精度高等特点。

下面是步进电机控制设计的主要步骤:1.确定电机的参数:步进电机的参数包括相数、相电阻、相感应、步距角等,这些参数决定了控制步进电机的电流大小和步进角度。

2.选择正确的驱动电路:常见的步进电机驱动电路有双极性驱动和四相八线驱动。

双极性驱动适用于电流较大的步进电机,而四相八线驱动适用于电流较小的步进电机。

3.设计控制电路:步进电机的控制电路通常是由一个逻辑电平产生器和一个驱动电路组成。

逻辑电平产生器用于产生脉冲信号,而驱动电路则根据脉冲信号控制步进电机的运行方向和速度。

4.编写控制程序:使用MSP430单片机编写控制程序,通过控制IO口输出脉冲信号,将步进电机驱动起来。

控制程序需要根据步进电机的参数来确定脉冲频率和方向,以实现步进电机的转动。

5.调试和优化:通过调试和优化控制程序,调整脉冲频率和方向,使步进电机能够按照预定的角度或线性位移进行运动。

直流电机是一种常见的电动机,在各种控制系统中被广泛应用。

下面是直流电机控制设计的主要步骤:1.确定电机的参数:直流电机的参数包括额定电压、电流和功率等,这些参数决定了控制直流电机的电流大小和速度。

2.选择正确的驱动电路:常见的直流电机驱动电路有H桥驱动和单向驱动。

H桥驱动适用于正反转控制,而单向驱动只能实现单一方向的运动。

3.设计控制电路:直流电机的控制电路通常由一个PWM信号发生器和一个驱动电路组成。

PWM信号发生器产生调制信号,控制电机的转速和转向,驱动电路则根据PWM信号给电机供电。

4.编写控制程序:使用MSP430单片机编写控制程序,通过控制IO口产生PWM信号,将直流电机驱动起来。

89C51单片机的步进电动机控制系统设计

89C51单片机的步进电动机控制系统设计
以下几点:
(1)输入输出压差不能太大,太大则转换效率急速降低,而且容易击穿
损坏;
(2)输出电流不能太大,1.5A是其极限值。大电流的输出,散热片的尺
寸要足够大,否则会导致高温保护或热击穿;
(3)输入输出压差也不能太小,大小效率很差。其中12V电压给步进
电机供电,5V电压则给单片机供电。分别如图2、图3所示。
口一个低电平;当按下开关S4时,相当于给P0.3口一个低电平;当按下开
关S5时,相当于给P0.4口一个低电平。然后通过单片机实行相应的操作。
如图4。
图4按键部分电路
驱动部分
此电路是步进电机的驱动部分,我选用的是ULN2004芯片来驱动的,
ULN2004系列是一款高耐压,大电流达林顿管驱动器,包含7个NPN达林
89C51单片机的步进电动机控制系统设计
本文为大家带来两个89C51单片机的步进电动机控制系统设计。
89C51单片机的步进电动机控制系统设计一
系统整图如图1所示,本系统采用外部中断方式,p0口作为信号的输入
部分,p1口为发光二极管显示部分,p2口作为电机的驱动部分。
图1系统整图
电源部分
பைடு நூலகம்利用LM7812和LM7805芯片得到12V和5V的电压,它们的应用要注意
顿管。如图5。
图5驱动部分电路
状态指示部分
状态指示用P1口控制发光二极管的显示,如果相应端口是低电平,相应
的发光二极管就会亮,用它来表示步进电机所处的状态。
时钟部分
时钟电路是计算机的心脏,它控制着计算机的工作节奏,可以通过提高时
钟频率来提高CPU的速度,本次设计采用的晶振为12MHz。如图6。
图6时钟部分电路
(1)产生12V的电压给步进电机供电

基于stm32的步进电机控制系统设计与实现

基于stm32的步进电机控制系统设计与实现

基于STM32的步进电机控制系统设计与实现1. 引言步进电机是一种常见的电动机类型,具有定位准确、结构简单、控制方便等优点,在自动化控制领域得到广泛应用。

本文将介绍基于STM32单片机的步进电机控制系统设计与实现,包括硬件设计、软件开发和系统测试等内容。

2. 硬件设计2.1 步进电机原理步进电机是一种将输入脉冲信号转换为角位移的设备。

其工作原理是通过改变相邻两相之间的电流顺序来实现转子旋转。

常见的步进电机有两相、三相和五相等不同类型。

2.2 STM32单片机选择在本设计中,我们选择了STM32系列单片机作为控制器。

STM32具有丰富的外设资源和强大的计算能力,非常适合用于步进电机控制系统。

2.3 步进电机驱动模块设计为了实现对步进电机的精确控制,我们需要设计一个步进电机驱动模块。

该模块主要包括功率放大器、驱动芯片和保护电路等部分。

2.4 电源供应设计步进电机控制系统需要稳定可靠的电源供应。

我们设计了一个电源模块,用于为整个系统提供稳定的直流电源。

3. 软件开发3.1 开发环境搭建在软件开发过程中,我们需要搭建相应的开发环境。

首先安装Keil MDK集成开发环境,并选择适合的STM32单片机系列进行配置。

3.2 步进电机控制算法步进电机控制算法是实现步进电机精确控制的关键。

我们可以采用脉冲计数法、速度闭环控制等方法来实现对步进电机的位置和速度控制。

3.3 驱动程序编写根据硬件设计和步进电机控制算法,我们编写相应的驱动程序。

该程序主要负责将控制信号转换为驱动模块所需的脉冲信号,并通过GPIO口输出。

3.4 系统调试与优化在完成软件编写后,我们需要对系统进行调试和优化。

通过调试工具和示波器等设备,对系统进行性能测试和功能验证,以确保系统工作正常。

4. 系统测试与评估在完成硬件设计和软件开发后,我们需要对系统进行全面的测试和评估。

主要包括功能测试、性能测试和稳定性测试等内容。

4.1 功能测试功能测试主要验证系统是否按照预期工作。

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

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

基于AT89C52单片机的步进电机控制系统设计摘要:步进电机专用开发系统,适用于数控机床及某些特定条件及系统。

本文通过单片机为开发平台,对步进电机进行控制.采用单片机A T89C52,根据输入的数据转化成的控制信号来控制步进电动机的角位移的一种方法,包括硬件设计和软件设计.整个系统主要由电机驱动电路,声光报警电路,4位LED显示电路,电源电路及核心单片机部分构成。

利用单片机产生步进电机驱动脉冲,通过4×4矩阵键盘能实现对步进电机启动、停止功能的选择以及加速、减速、反转功能的选择,使用方便、操作简单。

其中在步进电机控制器的设计中,重点阐述脉冲产生电路以及对速度的控制,实现对步进电机速度精确控制的开发系统.提高步进电机的步进精度,能够控制三相或四相步进电机。

且电路简单,成本较低,控制方便,移植性强.实用价值高。

关键词:A T89C52;步进电机;脉冲产生Design of Control System for Stepping Motor Based onAT89C52Abstract:A stepper motor dedicated development system,applicable to CNC machine tools and some special conditions and system. In this paper,through the SCM as the development platform,for the stepper motor control。

The paper introduce one way that controls the stepping motor by microcomputer AT89C52 depending on the control signal to which input data convert control the line displacement of the stepping motor,namely simply graph plotter,including its hardware and software。

  1. 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
  2. 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
  3. 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。

计算机硬件技术基础课程设计报告
一、设计题目
步进电动机控制
二、问题提出
该题目提出的目的是培养利用所学的计算机硬件基础知识(MCS-51)进行简单的软硬件设计的能力,掌握程单片机开发的一般过程和方法。

了解步进电机的工作原理,掌握它的转动控制方式和调试方法.
三、总体设计
1、用P1口实现对步进电动机的驱动。

通过对P1口低四位赋值,实现步进电机的单线
八拍的驱动,并且赋值通过查表实现。

单双八拍:(A—AB—B—BC—C—CD—D—DA—A)
TAB1:DB 08H,0CH,04H,06H,02H,03H,01H,09H
2、用P3口实现对步进电机的调速,调正反转和起停的控制。

P3.0: 0为有效1为无效…………正转
P3.1: 0为有效1为无效…………反转
P3.2: 0为有效1为无效…………停止
P3.3: 0为有效1为无效…………速度1时间间隔70ms
P3.4: 0为有效1为无效…………速度2时间间隔50ms
P3.5: 0为有效1为无效…………速度3时间间隔30ms
P3.6: 0为有效1为无效…………速度4时间间隔10ms
(1)通过外部中断INT0实现对P3.2口的置一或着置零,在经过判别P3.3口来实现起停控制。

(2)通过判别P3.0,P3.1口的1或者0来决定是正或者反转。

(3)通过内部中断Timer0来实现八拍的时间间隔,并且通过P3.3,P3.4,P3.5,P3.6的1或者0来决定TH0和TH1的初值,从而实现调速
四、具体设计
1、流程图
2
3、实验程序
ORG 8000H
LJMP MAIN
ORG 8003H
LJMP INT0_
ORG 800BH
AJMP DIANJI
ORG 8010H
MAIN:MOV TMOD,#01H ;设置计数器0工作于方式0 MOV R2,#4CH ;对计数器设初值
MOV R3,#00H
MOV TH0,R2
MOV TH1,R3
SETB EA ;开总中断
SETB ET0
SETB TR0 ;启动计数器
MOV A,#00H
MOV R4,#0AH
MOV R5,#00H
MOV DPTR,#TAB1 ;默认正转
JNB TR0,STOP
SPEED:JNB P3.3,SPEED1 ;检测速度
JNB P3.4,SPEED2
JNB P3.5,SPEED3
JNB P3.6,SPEED4
CTRL:JNB P3.0,ZHENG ;检测正反转
JNB P3.1,FAN
P1.0
P1.1
P1.2
P1.3
BA
BB
BC
BD
AJMP SPEED
ZHENG:CLR EA ;查表1
MOV DPTR,#TAB1
SETB EA
AJMP CTRL
FAN: CLR EA ;查表2
MOV DPTR,#TAB2
SETB EA
AJMP CTRL
INT0_:CPL TR ;外部中断申请程序RETI
STOP:SJMP $ ;停止
SPEED1:CLR EA ;步进70ms MOV R2,#04H
MOV R3,#00H
SETB EA
AJMP CTRL
SPEED2:CLR EA ;步进50ms MOV R2,#4CH
MOV R3,#00H
SETB EA
AJMP CTRL
SPEED3:CLR EA ;步进30ms MOV R2,#94H
MOV R3,#00H
SETB EA
AJMP CTRL
SPEED4:CLR EA ;步进10ms MOV R2,#0DCH
MOV R3,#00H
SETB EA
AJMP CTRL
DIANJI:CLR ET0 ;驱动子程序CLR TR0
MOV TH0,R2
MOV TL0,R3
DJNZ R4,RETI_
MOV R4,#0AH
MOV A,R5
MOVC A,@A+DPTR
MOV P1,A
INC R5
CJNE R5,#08H,RETI_
MOV R5,#00H
RETI_:SETB ET0
SETB TR0
RETI
TAB1:DB 08H,0CH,04H,06H,02H,03H,01H,09H ;正转
TAB2:DB 09H,01H,03H,02H,06H,04H,0CH,08H ;反转
END
五、设计中困难及解决
⑴对步进电动机不了解,一开始不知道如何编写程序;
通过老师给的程序基本了解了步进电机如何驱动。

⑵步进电机有三种驱动方式,自己对脉冲占空比不了解,对调速产生困难;
通过给内部中断赋不同初值,来解决步进之间的时间间隔实现速度的变化。

⑶由于实现的功能较多,采用的中断较多,不知如何连线;
通过询问老师和同学,参考实验书,采用集中用P3口,用排线连接。

优缺点:
优点:采用了多种中断,并且连线简洁;程序结构清晰易懂,模块分明。

缺点:由于对步进电机的了解较少,于是在采用对步进电机的速度控制时只能采用变化不提啊明显的赋值办法;对程序中一些位的设置理解不深,直接从课本例题中抄,导致程序修改很多次仍不知错在何处;由于本身实现的功能较多,加上时间紧,所以创新处较少。

六、收获体会
在近一周以来的设计中,看到那些复杂的机器语言简直让我有点头晕,但是通过这次程序设计,通过对单片机的又一次温习与突破,通过向老师和同学的请教和探讨,通过对程序的编写与调试,看着自己设计的功能慢慢的完善起来,使我对单片机有了很大的兴趣. 通过本次设计使我进一步了解了单片机的广泛用途,加深了对微机的认识,设计的过程充满了艰辛,看书查资料,但这过程中自己却是真真正正的学会了不少东西,感谢老师孜孜不倦的教诲,我又进入了一片学习的新天地,对计算机产生了新的学习兴趣,自己一定会将在这次设计中的经验应用于其他方面,并且培养严谨的学习态度,学习要讲求弄懂,不可以不求甚解。

自己在以后的学习生活中也会继续这次设计中坚持不懈的积极态度。

相关文档
最新文档