基于单片机的步进电机控制系统设计
- 格式:doc
- 大小:849.00 KB
- 文档页数:26
基于单片机的步进电机驱动控制系统的设计与实现基于单片机的步进电机驱动控制系统的设计与实现摘要:步进电机是一类广泛应用于工业自动化领域的电动机,其特点是精度高、响应速度快。
本文基于单片机,设计并实现了一种步进电机驱动控制系统。
该系统通过单片机对步进电机进行精确控制,实现了步进电机的定位、速度调节、方向控制等功能。
通过实验验证,该系统能够有效地控制步进电机的运动,具有一定的实用价值。
1. 引言步进电机是一种在工业自动化领域广泛应用的电动机,其由于具有精确控制、自带位置反馈和无需增量编码器等特点,被广泛应用于数控机床、纺织机械、印刷机械等领域。
而基于单片机的步进电机驱动控制系统,能够通过软件控制实现对步进电机的高精度控制,具有较高的实用性。
2. 步进电机的原理步进电机是一种能够按照预定的步长进行旋转的电动机。
其根据不同的工作原理可分为磁力转矩型和磁场转动型两种。
在本系统中我们选择了磁场转动型步进电机。
3. 单片机的选择本系统采用了XX型单片机,并结合其特点设计了相应的步进电机驱动控制系统。
4. 步进电机驱动电路设计步进电机驱动电路是实现步进电机精确控制的关键,本系统采用了XX电机驱动芯片,并参照其驱动电路设计了电路。
5. 程序设计通过单片机的软件控制,可以实现对步进电机的各项参数进行调节和控制。
本系统通过编程控制实现了步进电机的定位、速度调节和方向控制等功能。
6. 系统实现与实验结果经过系统的实现和实验验证,本系统能够有效地控制步进电机的运动。
实验结果表明,该系统具有较高的精确度和稳定性。
7. 总结与展望通过本文对基于单片机的步进电机驱动控制系统的设计与实现,我们得出了以下结论:本系统通过单片机实现对步进电机的高精度控制,具有较高的实用性和可行性。
然而,本系统还存在一些问题和不足之处,例如在特定条件下,步进电机可能出现失步现象等。
因此,未来可以进一步完善该系统,并结合实际应用场景进行优化,提高系统的精确度和稳定性。
基于单片机的步进电机控制的设计本文主要介绍了基于单片机的步进电机控制的设计,包括步进电机控制的基本原理、单片机控制步进电机的具体实现方法、实验结果以及未来展望等方面。
一、步进电机控制的基本原理步进电机是一种控制精度高、响应速度快、运动平稳、噪音低的电机,广泛应用于数控机床、自动化设备、印刷机、纺织机等领域。
步进电机的控制原理是通过向电机提供不同的脉冲序列控制电机转动的步距角度,实现电机旋转、逆旋转、定位等操作。
其中,步距角度是指电机每次接收到一组脉冲信号后转动的角度,它与电机的结构参数、电气参数等有关。
单片机控制步进电机可以采用两种方式,一种是直接控制步进电机,另一种是通过驱动芯片来控制步进电机。
下面介绍两种实现方法的具体步骤。
(一)直接控制步进电机步骤一:确定步进电机的电气参数,并根据电气参数确定所需的驱动电压和电流。
步骤二:连接步进电机到单片机的相应IO口,控制步进电机正、反转和步距角度。
步骤三:编写控制程序,实现步进电机的控制。
步进电机的控制程序主要包括以下几个方面:1.设定步进电机工作方式(正转、反转、定位等)。
2.设定步进电机步距角度,根据步距角度确定脉冲信号频率。
3.输出控制信号,使步进电机按设定的方式转动。
步骤二:设计电路板,将驱动芯片和步进电机连接起来。
步骤三:编写控制程序,通过单片机向驱动芯片发出脉冲信号,控制步进电机的转动。
具体控制程序的编写与直接控制步进电机的实现方法类似,主要是控制脉冲信号的频率和方向。
三、实验结果我们在实验室里搭建了一个步进电机控制系统,采用的是第二种实现方法,即通过驱动芯片来控制步进电机。
实验结果表明,该控制系统具有良好的控制精度和响应速度,可以实现步进电机的高速旋转、逆转和定位等操作。
四、未来展望随着工业自动化的不断推进和新一代技术的不断涌现,步进电机控制技术将会变得越来越重要。
未来,我们将进一步深入研究步进电机控制技术,探索新的控制方法和应用场景,为工业自动化领域的发展做出更大的贡献。
基于单片机的步进电机控制系统的设计
步进电机是一种特殊的电机,它的转动是以步进的形式进行的,每一次步进角度由控制电路发出的一个脉冲决定。
因此,基于单片
机的步进电机控制系统需要实现以下功能:
1. 产生脉冲信号:单片机需要通过定时器等模块产生相应的脉
冲信号,以控制步进电机的运动。
2. 识别旋转方向:步进电机需要能够前进和后退,因此单片机
需要实时检测步进电机的转动方向,并控制脉冲信号发生的顺序。
3. 控制转速:控制步进电机转速需要通过控制脉冲信号的频率
来实现,单片机需要动态地调整脉冲信号的频率,从而控制欲速度。
下面是实现步进电机控制的一种基本算法:
1. 设置电机控制端口,初始化各参数。
2. 等待步进电机稳定。
在控制电路上电时,如果步进电机没有
停在起始位置,需要先手动将步进电机转动到起始位置,然后等待
电机稳定。
3. 根据旋转方向和转速控制脉冲信号产生频率。
根据步进电机
的旋转方向,确定脉冲信号产生的顺序,然后通过定时器等模块产
生相应的脉冲信号,从而控制步进电机旋转。
4. 根据指令调整转速。
根据实际需求调整步进电机的转速,即
调整脉冲信号频率。
上述算法是一个最基本的控制算法,具体的实现还需要考虑步
进电机控制的精度、错误处理等方面的问题。
基于MSP430单片机的步进电机控制系统设计步进电机是一种电动机,能够将电脉冲信号转换为机械转动。
它具有结构简单、运行平稳、响应速度快、定位精度高等特点,广泛应用于各种机械设备中。
本文主要介绍基于MSP430单片机的步进电机控制系统的设计。
1.系统硬件设计步进电机控制系统的硬件设计需要包括MSP430单片机、步进电机、电源以及其他辅助电路。
1.1MSP430单片机MSP430系列是由德州仪器公司推出的一款低功耗、高性能的16位单片机。
它具有低功耗、高计算性能、丰富的接口资源等特点,非常适合用于步进电机控制系统。
1.2步进电机步进电机是由转子、定子、绕组和传感器组成,可以完成定距离的转动。
根据具体需求,可以选择不同类型的步进电机,如单相、双相、两相、三相等。
1.3电源步进电机控制系统需要提供稳定的电源供电。
可以采用直流电源或者交流电源,具体电压和电流根据步进电机的额定参数确定。
1.4辅助电路辅助电路包括电机驱动电路、电流控制电路、保护电路等。
电机驱动电路可以选择使用驱动芯片,如L293D芯片,来驱动步进电机。
电流控制电路用于控制步进电机的电流大小,保护电路用于保护步进电机不受过电流、过压等问题的影响。
2.系统软件设计步进电机控制系统的软件设计需要编写相应的程序代码,并通过MSP430单片机来控制步进电机的运动。
2.1硬件初始化在软件设计开始之前,需要对MSP430单片机的相关硬件进行初始化设置。
包括设置时钟源、引脚功能、定时器等。
根据具体的单片机型号,可以参考官方提供的资源来进行初始化设置。
2.2电机控制算法步进电机的控制主要通过控制电流脉冲来实现。
根据步进电机的型号和控制要求,可以选择不同的控制算法,如单相步进、双相步进或者微步控制等。
通过控制电流脉冲的频率、信号大小来控制步进电机的转动方向以及速度。
2.3交互界面设计可以通过开发板上的按键、液晶显示屏、串口等方式,设计一个交互界面,用于用户输入控制命令、设置参数以及显示系统状态等。
D10-基于单片机旳步进电机控制系统一、理解什么是步进电机以及其工作原理步进电机是数字控制电机,步进电机旳运转是由电脉冲信号控制旳,其角位移量或线位移量与脉冲数成正比,每个一种脉冲,步进电机就转动一种角度(不距角)或前进、倒退一步。
步进电机旋转旳角度由输入旳电脉冲数确定,因此,也有人称步进电机为数字/角度转换器。
步进电机旳各相绕组按合适旳时序通电,就能使步进电机转动。
当某一相绕组通电时,对应旳磁极产生磁场,并与转子形成磁路,这时,假如定子和转子旳小齿没有对齐,在磁场旳作用下,由于磁通具有力图走磁阻最小途径旳特点,则转子将转动一定旳角度,使转子与定子旳齿互相对齐,由此可见,错齿是促使电机旋转旳原因。
二、步进电机旳特点(1)步进电机旳角位移与输入脉冲数严格成正比,因此当它转一转后,没有合计误差,具有良好旳跟随性。
(2)由步进电机与驱动电路构成旳开环数控系统,既非常以便、廉价,也非常可靠。
同步,它也可以有角度反馈环节构成高性能旳闭环数控系统。
(3)步进电机旳动态响应快,易于启停、正反转及变速。
(4)速度可在相称宽旳范围内平滑调整,低速下仍能保证获得很大旳转矩,因此一般可以不用减速器而直接驱动负载。
(5)步进电机只能通过脉冲电源供电才能运行,它不能直接用交流电源或直流电源。
(6)步进电机自身旳噪声和振动比较大,带惯性负载旳能力强。
三、步进电机旳控制步进电机旳控制重要包括换相次序旳控制、速度控制、速度控制、加减速控制等,控制系统就是运用单片机旳功能实现以上控制旳系统,即本次设计旳目旳。
四、示意图五、硬件设计计划本设计旳硬件电路只要包括控制电路、最小系统、驱动电路、显示电路四大部分。
最小系统只要是为了使单片机正常工作。
控制电路只要由开关和按键构成,由操作者根据对应旳工作需要进行操作。
显示电路重要是为了显示电机旳工作状态和转速。
驱动电路重要是对单片机输出旳脉冲进行功率放大,从而驱动电机转动。
(1)控制电路根据步进电机旳工作原理可以懂得,步进电机转速旳控制重要是通过控制通入电机旳脉冲频率,从而控制电机旳转速。
基于单片机的步进电机控制系统设计摘要:步进电动机由于用其组成的开环系统既简单、廉价,又非常可行,因此在打印机等办公自动化设备以及各种控制装置等众多领域有着极其广泛的应用。
本文介绍的是一种基于单片机的步进电机的系统设计,用汇编语言编写出电机的正转、反转、加速、减速、停止程序,通过单片机、电机的驱动芯片ULN2004以及相应的按键实现以上功能,并且步进电机的工作状态要用相应的发光二极管显示出来。
本文内容介绍了步进电机以及单片机原理、该系统的硬件电路、程序组成,同时对软、硬件进行了调试,同时介绍了调试过程中出现的问题以及解决问题的方法。
该设计具有思路明确、可靠性高、稳定性强等特点,通过调试实现了上述功能。
关键词:步进电机;脉宽调制;驱动机构;单片机;转动Design of The Control System of Step-motor Abstract:The open-loop system which is composed by step-motor is simple, cheap and very practical, so there are very wide range of applications in printers and other office automation equipment and various control devices, and many other fields.This article describes one design of step-motor system based on program of the preparation of a motor , reverse, speed up, slow down, stop is written by compile language. The above functions are realized through the microcontroller, motor driver chip ULN2004 and correspond key , and the work state of stepper motor is diaplayed through the light-emitting diode. This article introduces the principle of stepper motor and single-chip microcomputer, the system hardware circuit, the program components, while software and hardware for the debugging, at the same time introduces the problems which are appeared in the debugging process and the solutions of the problems . The design has the advantages of clear , high reliability, strong stability, etc.,and the above-mentioned functions are realized through the debugging..Key Words:Stepper motor; Pulse-width modulated; driving mechanism; singlechip; rotation目录序言 (1)第1章绪论 (2)课题研究的目的和意义 (2)国内外研究概况 (2)论文的主要研究内容 (3)第 2 章步进电机与单片机简介 (4)步进电机介绍 (4)步进电机概述 (4)步进电机的工作原理 (6)步进电机的分类与选择 (8)步进电机驱动系统介绍 (9)步进电机驱动系统简介 (9)步进电机绕组的电气特性 (10)单片机原理 (11)单片机原理概述 (11)单片机的应用系统 (12)AT89C51简介 (13)第 3 章系统整体硬件结构 (17)系统整图 (17)电源部分 (18)按键部分 (18)驱动部分 (19)状态指示部分 (20)时钟部分 (20)第 4 章系统软件设计 (21)系统开发软硬件环境 (21)系统主程序 (21)查键部分 (22)前进部分 (22)后退部分 (23)加速部分 (24)减速部分 (25)第 5 章系统的调试与检测 (26)程序编译时的错误与解决方法 (26)LM7812输出电压错误与解决方法 (26)步进电机转动错误及解决方法 (26)结论与展望 (27)参考文献 (28)致谢 (29)附录 (29)附录1:源程序清单 (30)附录2:英文资料及其中文翻译 (35)基于单片机的步进电机控制系统设计序言步进电机作为执行元件,是机电一体化的关键产品之一,广泛应用在各种自动化控制系统中。
本科毕业设计基于单片机的步进电机控制系统的设计摘要随着自动控制系统的发展和对高精度控制的要求,步进电机在自动化控制中扮演着越来越重要的角色,区别于普通的直流电机和交流电机,步进电机可以对旋转角度和转动速度进行高精度控制。
步进电机作为控制执行元件,是机电一体化的关键组成之一,广泛应用在各种自动化控制系统和精密机械等领域。
步进电机是将电脉冲信号转变为角位移或线位移的开环控制元件。
在非超载的情况下,电机的转速、停止的位置只取决于脉冲信号的频率和脉冲数,而不受负载变化的影响,即给电机加一个脉冲信号,电机则转过一个步距角。
本系统介绍了一种基于单片机的步进电机控制系统的设计,包括了硬件设计和软件设计两部分。
其中,硬件设计包括单片机最小系统、键盘控制模块、LCD显示模块、步进电机驱动模块、位置检测模块共5个功能模块的设计。
系统软件设计采用C语言编写,包括主程序、数字键处理程序、功能键处理程序、电机驱动处理程序、显示模块、位置采集模块。
本设计采用STC89C52单片机作为主控制器,4*4矩阵键盘作为输入,LCD1602液晶作为显示,ULN2003A芯片驱动步进电机。
系统具有良好的操作界面,键盘输入步进电机的运行距离;步进电机能以不同的速度运行,可以在不超过最大转速内准确运行到任意设定的位置,可调性较强;显示设定的运行距离和实际运行距离;方便操作者使用。
关键词:单片机步进电机液晶显示键盘驱动Design of the Stepping Motor Control System Based on SCMQiu 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 前言...............................................................0籟丛妈羥为贍偾蛏练淨。
基于单片机的步进电机控制系统设计引言:步进电机是一种常用的电机类型,具有精准的位置控制、高效的能量转换等特点。
在许多自动化设备中广泛应用,如数控机床、3D打印机、机器人等。
本文将以基于单片机的步进电机控制系统设计为主题,介绍系统的硬件设计、软件设计以及实验验证。
一、硬件设计1.步进电机选型:根据实际应用需求,选择适当的步进电机。
包括步距角、转速范围、扭矩要求等等。
2.电源设计:步进电机需要驱动电压和电流,根据步进电机的额定电压和电流选用适当的电源。
3.驱动电路设计:步进电机通常需要驱动电路来控制电流和脉冲序列。
常见的驱动电路有全桥驱动器、半桥驱动器等。
4.信号发生器设计:步进电机通过脉冲信号来控制转动角度和速度,因此需要信号发生器来产生合适的脉冲序列。
常见的信号发生器有定时器、计数器等。
5.单片机接口设计:单片机作为步进电机控制系统的核心,需要与其他硬件进行通信。
因此需要设计合适的接口电路,将单片机的输出信号转换为驱动电路和信号发生器所需的电压和电流。
二、软件设计1.单片机程序框架设计:根据具体的单片机型号和开发环境,设计合适的程序框架。
包括初始化设置、主循环、中断处理等。
2.脉冲生成程序设计:根据步进电机的控制方式(如全步进、半步进、微步进等),设计脉冲生成程序。
通过适当的延时和输出信号控制,产生合适的脉冲序列。
3.运动控制程序设计:设计运动控制程序,实现步进电机的前进、后退、加速、减速等功能。
根据具体需求,可以设计不同的运动控制算法,如速度环控制、位置环控制等。
4.保护机制设计:为了保护步进电机和控制系统,设计合适的保护机制。
如过流保护、过压保护、过载保护等。
三、实验验证1.硬件连接:将步进电机、驱动电路和单片机按照设计进行连接。
2.软件调试:通过单片机编程,调试程序代码。
确保脉冲生成、运动控制等功能正常工作。
3.功能测试:对步进电机控制系统进行功能测试,包括正转、反转、加速、减速等功能。
通过观察步进电机的运动状态和测量相关参数来验证系统设计的正确性和性能。
《基于单片机的步进电机控制系统研究》篇一一、引言随着科技的发展,步进电机因其高精度、低噪音、易于控制等优点,在各个领域得到了广泛的应用。
然而,传统的步进电机控制方式存在控制精度低、响应速度慢等问题。
因此,基于单片机的步进电机控制系统应运而生,其具有体积小、控制精度高、响应速度快等优点。
本文旨在研究基于单片机的步进电机控制系统的设计原理、实现方法以及应用前景。
二、步进电机控制系统的基本原理步进电机是一种将电信号转换为机械运动的设备,其运动过程是通过一系列的步进动作实现的。
步进电机的控制原理主要是通过改变电机的电流和电压,使电机按照设定的方向和速度进行旋转。
三、基于单片机的步进电机控制系统设计基于单片机的步进电机控制系统主要由单片机、步进电机驱动器、步进电机等部分组成。
其中,单片机是控制系统的核心,负责接收上位机的指令,并输出相应的控制信号给步进电机驱动器。
步进电机驱动器则负责将单片机的控制信号转换为适合步进电机工作的电流和电压。
在硬件设计方面,我们选择了一款性能稳定、价格适中的单片机作为主控制器,同时设计了相应的电路和接口,以实现与上位机和步进电机驱动器的通信。
在软件设计方面,我们采用了模块化设计思想,将系统分为初始化模块、控制模块、通信模块等部分,以便于后续的维护和升级。
四、基于单片机的步进电机控制系统的实现在实现过程中,我们首先对单片机进行了初始化设置,包括时钟设置、I/O口配置等。
然后,通过编程实现了对步进电机的控制,包括步进电机的启动、停止、正反转以及速度调节等功能。
此外,我们还实现了与上位机的通信功能,以便于实现对步进电机的远程控制和监控。
五、实验结果与分析我们通过实验验证了基于单片机的步进电机控制系统的性能。
实验结果表明,该系统具有较高的控制精度和响应速度,能够实现对步进电机的精确控制。
同时,该系统还具有较好的稳定性和可靠性,能够在各种复杂环境下正常工作。
此外,我们还对系统的抗干扰能力进行了测试,结果表明该系统具有较强的抗干扰能力。
目录基于单片机的步进电机控制系统设计任务书 (2)课题介绍、主要内容、主要器件、主要资料及参考文献、预期设计(论文)成果 (2)一.基于单片机的步进电机控制系统设计 (6)摘要 (6)1.1课程设计目的 (6)1.2 课程设计说明 (6)1.3 步进电机的变频调速 (7)1.4系统软硬件协同设计 (8)1.5应用实例 (10)二.单片机的电机驱动接口电路设计 (18)1.1 .软件设计 (18)三.单片机对电机转向、转速的控制 (18)四.单片机对步进电机的正、反转控制 (18)五.利用单片机实现对步进电机的运动控制 (21)1 引言 (21)2系统总体结构设计 (21)3 系统硬件电路设计 (22)六.结束语 (30)1.基于单片机的步进电机控制系统设计摘要:本文应用单片机、步进电机驱动芯片、字符型LCD和键盘阵列,构建了集步进电机控制器和驱动器为一体的步进电机控制系统。
二维工作台作为被控对象通过步进电机驱动滚珠丝杆在X/Y轴方向联动。
文中讨论了一种以最少参数确定一条圆弧轨迹的插补方法和步进电机变频调速的方法。
步进电机控制系统的开发采用了软硬件协同仿真的方法,可以有效地减少系统开发的周期和成本。
最后给出了步进电机控制系统的应用实例。
关键词: 步进电机控制系统,插补算法,变频调速,软硬件协同仿真1.1 课程设计目的1、熟悉和掌握单片机的结构和工作原理。
2、掌握单片机的接口技术和相关外围芯片的特性及控制方法。
3、掌握以单片机为核心的电路设计的基本方法和技术,了解有关电路参数的计算方法。
4、通过实际程序设计和调试,逐步掌握模块化程序设计方法和调试技术。
5、通过完成一个包括电路设计和程序开发的完整过程,为今后从事相关工作打下基础。
1.2 课程设计说明(1) 作为一种数字伺服执行元件,步进电机具有结构简单、运行可靠、控制方便、控制性能好等优点,广泛应用在数控机床、机器人、自动化仪表等领域。
为了实现步进电机的简易运动控制,一般以单片机作为控制系统的微处理器,通过步进电机专用驱动芯片实现步进电机的速度和位置定位控制。
(2) 圆弧插补改进算法逐点比较插补算法因其算法简单、易实现且最大误差不超过一个脉冲当量,在步进电机的位置控制中应用的相当广泛[1>。
圆弧插补中,为了确定一条圆弧的轨迹,可采用:给出圆心坐标、起点坐标和终点坐标;给出半径、起点和终点坐标;给出圆弧的三点坐标等。
在算法实现时这些参数若要存放在单片机内部资源有限的数据存储器(RAM)中,如果要经过复杂的运算才能确定一段圆弧,不但给微处理器带来负担,而且要经过多步运算,往往会影响到算法的精确度。
因此选取一种简单且精确度高的插补算法是非常必要的。
本文提出了一种改进算法:在圆弧插补中,无论圆弧在任何位置,是顺圆或是逆圆,都以此圆弧的圆心作为原点来确定其他坐标。
因此只须给出圆弧的起点坐标和圆弧角度就可以确定该圆弧。
如果一个轴坐标用4个字节存储(如12.36),而角度用2个字节存储(如45°),则只需要10个字节即可确定一段二维的圆弧。
较之起其他方法,最多可节省14个存储单元。
现以第I象限逆圆弧为例,计算其终点坐标。
如图1所示,(X0,Y0)为圆弧的起点坐标,(Xe,Ye)为圆弧的终点坐标,θ为圆弧的角度。
圆弧半径:终点坐标:终点坐标相对X轴的角度:本系统要求输入的角度精确到1度,输入坐标的分辨率是0.01,单片机C语言的浮点运算能精确到0.000001,按照上面的公式算出的终点坐标1%,能够满足所要求的精确,虽存在误差,但这个误差小于度。
(3)步进电机的变频调速虽然步进电机具有快速启停能力强、精度高、转速容易控制的特点,但是在实际运行过程中由于启动和停止控制不当,步进电机仍会出现启动时抖动和停止时过冲的现象,从面影响系统的控制精度。
尤其是步进电机工作在频繁启动和停止时,这种现象就更为明显[2>。
为此本文提出了一种基于单片机控制的步进电机加减速离散控制方法。
加减速曲线如图2 所示,纵坐标是频率f,单位为脉冲/秒或步/秒。
横坐标时间t,单位为秒。
步进电机以f0 启动后加速至t1 时刻达到最高运行频率f,然后匀速运行,至t2 时刻开始减速,在t5 时刻电机停转,总的步数为N。
其中电机从静止加速至最高运行频率和从最高运行频率至停止至是步进电机控制的关键,通常采用匀加速和匀减速方式。
图2 时间与频率的函数图图3 离散化的时间变频图采用单片机对步进电机进行加减速控制,实际上就是改变输出脉冲的时间间隔,可采用软件和硬件两种方法。
软件方法依靠延时程序来改变脉冲输出的频率,其中延时的长短是动态的,该方法因为要不停地产生控制脉冲,占用了大量的CPU时间;硬件方法是依靠单片机内部的定时器来实现的,在每次进入定时中断后,改变定时常数(定时器装载值),从而升速时使脉冲频率逐渐增大,减速时使脉冲频率逐渐减小。
这种方法占用CPU时间较少,是一种效率比较高的步进电机调速方法。
考虑到单片机资源(字长)和编程的方便,不需要每步都计算定时器装载值。
如图3所示,采用离散方法将加减速曲线离散化。
离散化后速度是分台阶上升的,而且每上升一个台阶都要在该台阶保持一段时间,以克服由于步进电机转子转动惯量所引起的速度滞后。
只有当实际运行速度达到预设值后才能急速加速,实际上也是局部速度误差的自动纠正。
(4)系统软硬件协同设计对于51系列单片机的软件开发,传统的方法是在PC机上采用Keil等开发工具进行程序设计、编译、调试,待程序调试通过之后生成目标文件下载至单片机硬件电路再进行硬件调试[3>。
这种方法只有硬件电路完成之后才能进行系统功能测试,若此时发现硬件电路存在设计问题且必须进行修改时就会显著影响系统开发的成本和周期。
为此,本文采用了系统软硬件协同仿真的开发方法,使得硬件电路实现前的功能测试成为可能。
同时硬件电路的软件化仿真为硬件电路的设计与实现提供了有力的保障。
其中在Keil uVision2集成开发环境下,实现步进电机控制系统的程序设计、编译、调试,并最终生成目标文件*.hex,而由英国Proteus Labcenter electronics公司所提供的EDA工具Proteus则利用该目标文件*.hex 实现对步进电机控制系统硬件电路功能的测试。
图4 步进电机控制系统硬件电路仿真如图4所示,单片机AT89C55司职步进电机控制器,通过运行在Keil uVision2 环境下所开发的程序来控制两个步进电机驱动芯片L298,从而实现对AXIS_X / AXIS_Y两轴步进电机的联动控制。
L298驱动芯片的步进脉冲输入信号来自AT89C55 P0端口,使能信号ENABLE A与ENABLE B并联接到AT89C55的P3.0、P3.1口,由程序控制实现步进电机的使能,从而避免电机线圈处于短路状态而烧坏驱动芯片。
4 x 4键盘阵列接AT89C55的P1端口,通过程序设计定义每个按键的具体功能。
LCD的数据端口DB0~DB7接AT89C55的P2端口,控制端口RS, RW, E分别接单片机的P3.5, P3.6, P3.7口。
相关的参数值、X/Y 轴坐标值可以通过LCD以文本方式显示。
本文采用软硬件协同仿真的方法经过设计à测试à修正à再测试一次次迭代开发,在制作控制系统硬件电路之前即可实现对系统整机功能的测试。
待系统程序和硬件电路设计方案最终完善之后便可以实际制作如图5所示的硬件电路。
显然该种方法可以显著提高系统软硬件开发的成功率,从而有效降低系统的开发周期和开发成本。
(5)应用实例图5即是根据图4进行硬件电路仿真的最终结果所制作的步进电机控制系统电路板。
该电路驱动X/Y轴步进电机通过滚珠丝杆带动二维工作台作联动,并由一只铅笔模拟加工刀具将所要加工的二维轨迹描绘出来。
图5步进电机控制系统硬件电路图6 二维模拟工作平台运动轨迹步进电机在控制系统中具有广泛的应用。
它可以把脉冲信号转换成角位移,并且可用作电磁制动轮、电磁差分器、或角位移发生器等。
有时从一些旧设备上拆下的步进电机(这种电机一般没有损坏)要改作它用,一般需自己设计驱动器。
此介绍为从一日本产旧式打印机上拆下的步进电机而设计的驱动器。
该先介绍该步进电机的工作原理,然后介绍了其驱动器的软、硬件设计。
1. 步进电机的工作原理该步进电机为一四相步进电机,采用单极性直流电源供电。
只要对步进电机的各相绕组按合适的时序通电,就能使步进电机步进转动。
图1是该四相反应式步进电机工作原理示意图。
图1 四相步进电机步进示意图开始时,开关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相绕组产生错齿,2、5号齿就和A、D相绕组磁极产生错齿。
依次类推,A、B、C、D四相绕组轮流供电,则转子会沿着A、B、C、D方向转动。
四相步进电机按照通电顺序的不同,可分为单四拍、双四拍、八拍三种工作方式。
单四拍与双四拍的步距角相等,但单四拍的转动力矩小。
八拍工作方式的步距角是单四拍与双四拍的一半,因此,八拍工作方式既可以保持较高的转动力矩又可以提高控制精度。
单四拍、双四拍与八拍工作方式的电源通电时序与波形分别如图2.a、b、c所示:图2.步进电机工作时序波形图图3 步进电机驱动器系统电路原理图AT89C2051将控制脉冲从P1口的P1.4~P1.7输出,经74LS14反相后进入9014,经9014放大后控制光电开关,光电隔离后,由功率管TIP122将脉冲信号进行电压和电流放大,驱动步进电机的各相绕组。
使步进电机随着不同的脉冲信号分别作正转、反转、加速、减速和停止等动作。
图中L1为步进电机的一相绕组。
AT89C2051选用频率22MHz的晶振,选用较高晶振的目的是为了在方式2下尽量减小AT89C2051对上位机脉冲信号周期的影响。
图3中的RL1~RL4为绕组内阻,50Ω电阻是一外接电阻,起限流作用,也是一个改善回路时间常数的元件。
D1~D4为续流二极管,使电机绕组产生的反电动势通过续流二极管(D1~D4)而衰减掉,从而保护了功率管TIP122不受损坏。
在50Ω外接电阻上并联一个200μF电容,可以改善注入步进电机绕组的电流脉冲前沿,提高了步进电机的高频性能。
与续流二极管串联的200Ω电阻可减小回路的放电时间常数,使绕组中电流脉冲的后沿变陡,电流下降时间变小,也起到提高高频工作性能的作用。
3.软件设计该驱动器根据拨码开关KX、KY的不同组合有三种工作方式供选择:方式1 中断方式:P3.5(INT1)为步进脉冲输入端,P3.7为正反转脉冲输入端。