时间:2022-04-30 08:34:51
开篇:写作不仅是一种记录,更是一种创造,它让我们能够捕捉那些稍纵即逝的灵感,将它们永久地定格在纸上。下面是小编精心整理的12篇步进电机驱动电路,希望这些内容能成为您创作过程中的良师益友,陪伴您不断探索和进步。
关键词:PMM8731;SI-7300;步进电机;功率驱动电路
1PMM8713的功能特点
PMM8713是日本三洋电机公司生产的步进电机脉冲分配器。该器件采用DIP16封装,适用于二相或四相步进电机。PMM8713在控制二相或四相步进电机时都可选择三种励磁方式(1相励磁,2相励磁,1-2相励磁三种励磁方式之一),每相最小的拉电流和灌电流为20mA,它不但可满足后级功率放大器的要求,而且在所有输入端上均内嵌有施密特触发电路,抗干扰能力很强,其原理框图如图1所示。
在PMM8713的内部电路中,时钟选通部分用于设定步进电机的正反转脉冲输入法。PMM8713有两种脉冲输入法:双脉冲输入法和单脉冲输入法。采用双脉冲输入法的连线方式如图2(a)所示,其中CP、CU两端分别输入步进电机正反转的控制脉冲。当采用单脉冲输入法时,其连线方式如图2(b)所示,该图中的CK为时钟脉冲输入,步进电机的正反转方向由U/D的高、低电位决定。
片中的激励方式控制电路用来选择采用何种励磁方式。激励方式判断电路用于输出检测;而可逆环形计数器则用于产生步进电机在选定的励磁方式下的各相通断时序信号。
2SI-7300A的结构及功率驱动原理
SI-7300A是日本三肯公司生产的高性能步进电机集成功率放大器。该器件为单极性四相驱动,采用SIP18封装,其结构框图如图3所示。
步进电机功率驱动级电路可分为电压和电流两种驱动方式,电压驱动方式有串联电阻驱动和双电压驱动两种,其中串联电阻驱动在相绕组中串联了一定阻值和功率的电阻。为了维持步进电机的相电流,通常要提高驱动绕组的相电压,因此绕组串联电阻驱动方式效率较低,但方法简单,成本低,故在实际驱动电路中使用较多。双电压驱动在每相绕组导通时,首先施加高电压VH使电流快速上升,当电压上升到规定幅值时,将高电压VH切断,此时,回路以低电压VL维持,电路驱动效率可大大提高,但因采用高低两种驱动电源,且电源切换的控制电路比较复杂,因而较少采用。电流驱动方式最常用的是PWM恒流斩波驱动电路,也是专用集成电路中最常用的能获得高性能的驱动方式,其中一相的等效电路图如图4所示。步进电机使用较高电压的电源时,绕组电流几乎可以近似直线地上升到预定值,此时由流过RS的检测电流去控制一个斩波控制电路即可关断T1,从而使绕组电流在续流回路(L、D1、T2、RS、)中续流并下降。当电流下降到规定时间后(达到某一电流)由脉冲电路产生脉冲至斩波控制电路可使T1接通,如此反复(由T1的反复开关)对绕组电流进行斩波控制,就可使电流平均值趋于恒定。外接稳压二极管D2、D3可用作嵌位保护和内部集成续流回路(外接检测电阻RS),从而避免T1开关所引起的尖峰感应电动势所造成的尖峰电压T1的危害。
3在步进电机中应用
步进电机是常用的执行机构,它用脉冲频率控制转动速度,而用脉冲的数目来决定转动的角度。由于拖动负载大小不同,因此,仅仅接上电源是无法工作的,而必须接上相应的驱动器才能工作。驱动器的输出可为电机各相提供相应通电顺序的励磁电流。实际上,步进电机的工作性能在很大程度上取决于所使用的驱动电路的类型和参数。步进电机可分为PM型、VR型和HB型三种。其相数有两相,三相、四相、五相、六相等,常用的有两相或四相混合式步进电机。
由SI—7300A、PMM8713和80C51构成的步进电机驱动电路如图5所示,图中,PD端为SI—7300A输出电流IO的控制端,可以悬空或接高电平,当接高电平时可以适当提高SI—7300A的输出电流IO。步进电机的旋转方向和旋转速度可通过80C51的键盘输入,同时通过软件可编程控制并行I/O口P1.0和P1.1,以输出相应频率的脉冲来控制步进电机。步进电机采用42BYG009型时,驱动电压为24V,此时该功率驱动电路的矩频特性如图6所示。
图5
关键词:步进电机;单片机;调速系统;Proteus
中图分类号:TP27文献标识码:A
文章编号:1004-373X(2010)05-104-03
Design of Control System of Stepper Motor Based on Proteus and Single Chip Microcomputer
YANG Hong,LI Guohui
(Xi′an University of Post and Telecommunications,Xi′an,710061,China)
Abstract:Stepper motor is the open-loop control device changing the electrical pulse signal into angular displacement or linear displacement.The speed of stepper motor is controlled by turning the CP pulse frequency by the internal timer of AT89C52 single chip microcomputer,and its normal-reverse function is realized.The simulation is done by the Proteus software of EDA,and the hardware circuit is also designed.The results show that the simulation results by Proteus software and the hardware experimental results are basically consistent.The simulation is used firstly by Proteus,and it is transplanted into the corresponding hardware circuit.This way can reduce system′s developing costs and cycle,and has a certain promoting value.
Keywords:stepper motor;single chip microcomputer;speed regulating system;Proteus
0 引 言
步进电机是将电脉冲信号变换成角位移或直线位移的执行部件。步进电机则有定位和运转两种基本状态,当有脉冲输入时步进电机一步一步地转动,每给它一个脉冲信号,它就转动一定的角度[1]。步进电机的角位移量和输入脉冲的个数严格成正比,在时间上与输入脉冲同步,因此只要控制输入脉冲的数量、频率及电动机绕组通电的相序,便可获得所需的转角、转速及转动方向。在没有脉冲输入时,在绕组电源的激励下气隙磁场能使转子保持原有位置处于定位状态,因此非常适合于单片机控制。步进电机作为一种高可控性的特种电机,利用其没有误差积累(精度为100%)的特点,广泛应用于各种开环控制。
英国Labcenter electronics公司推出了嵌入式设计仿真与开发平台Proteus,用户可以根据需要搭建开发平台,将编译好的目标代码加载到芯片中。目前支持的编译器有Keil,GNU以及IAR等。在Proteus软件中还可以查看多种调试信息,如源代码执行情况、CPU寄存器信息、变量值以及FLASH与RAM中的信息等。大量的元件库支持大型设计,而且在仿真中还可以观察各元件的状态。先通过Proteus仿真,再移植到相应的硬件电路,这种方式可以减小系统开发开支和周期,值得推广。
1 系统的总体方案
该设计如图1所示,将单片机AT89C52产生的驱动脉冲通过功率放大器放大,从而驱动步进电机。通过4个按键,实现步进电机的正转、反转、加速、减速等功能,通过软件与硬件相结合的控制方法,实现了运用单片机对步进电机的稳定控制,实现grade 0~grade 9十级变速,转速分别是3 r/min,5 r/min,8 r/min,10 r/min,12 r/min,15 r/min,30 r/min,40 r/min,60 r/min,120 r/min,变速范围较广,并采用LCD1602显示屏即时显示控制电动机的转动信息。系统软件编写遵循模块化设计的原则,代码具有良好的易维护性和可移植性。本系统操作方便,可靠性高,其设计精度可以满足一般工业控制的要求,能满足现代化生产的需要,实现了对步进电机的良好控制。
图1 系统原理图
2 硬件设计
本系统的硬件设计主要包括单片机最小系统、步进电机驱动电路、LCD显示电路、键盘电路等,系统电路图如图2所示。
图2 系统电路图
2.1 驱动电路的设计
步进电机不能直接采用直流或者普通交流来供电,必须采用专门的步进电机驱动控制器,其驱动控制器一般包括脉冲发生与分配单元、功率驱动单元,闭环控制电路中还将加入反馈和保护单元。大多数步进电机运动控制系统都运行在开环状态下,因为成本较低,并无须反馈,故本设计采用了开环控制方式。
(1) 脉冲分配器
脉冲分配器又称环形分配器。步进电机正常工作需要按照步进电机的励磁状态表所规定的状态和顺序依次对各相绕组进行通电或者断电控制,各相驱动信号来源于脉冲分配器。脉冲分配器的主要功能是把来源于控制环节的时钟脉冲串按一定的规律分配给步进电机驱动器的各相输入端,控制励磁绕组的导通或者截止。脉冲分配器是一种特殊的可逆循环计数器,只是这种计数器的输出不是一般的编码,而是步进电机激励磁状态要求的特殊编码。
由于单片机的硬件资源完全够用,采取软件实现环形脉冲分配器的功能,使得硬件设计更为简洁。
(2) 激励方式
二相六线永磁式步进电机的激励方式有一相、┒相、一至二相三种。一相激励方式是指每一时刻四相中只有一相接通,步进电机以此方式工作时,温升较高,电源功率功耗小,但是当速度较高时容易产生失步;┒相激励方式是指每一个时刻四相中有两相导通,然后按四相的顺序循环;一至二相激励方式使步进电机工作在半步状态,与整步工作状态相比较,半步状态振动较小,且控制更准确。本设计中选用一至二相激励方式驱动步进电机。
关键词:步进电机电机控制系统
中图分类号: TM3 文献标识码: A 文章编号:
前言
步进电机是将电脉冲信号转变为角位移或线位移的开环控制元件。在非超载的情况下,电机的转速、停止的位置只取决于脉冲信号的频率和脉冲数,而不受负载变化的影响,即给电机加一个脉冲信号,电机则转过一个步距角。这一线性关系的存在,加上步进电机只有周期性的误差而无累积误差等特点。使得在速度、位置等控制领域用步进电机来控制变的非常的简单。
一、步进电机概述
步进电机是一种将电脉冲信号转换成相应的角位移或线位移的电磁机械装置,是一种输出与输入数字脉冲对应的增量驱动元件,具有快速启动和停止的能力。当负荷不超过步进电机所提供的动态转矩值时,它就可能在一瞬间实现启动和停止。它的步矩角和转速不受电压波动和负载变化的影响,也不受环境条件(如温度、气压、冲击和振动等)的影响,仅与脉冲频率有关。它每转l周都有固定的步数,在不丢步的情况下运行,其步距误差不会长期积累。
正是因为步进电机具备上述优点,它已经被广泛地用于自动控制系统中作为执行元件。但大多数设计人员常常习惯于用逻辑电路实现复杂的步进电机的控制,虽然已经取得很大成效,但实现起来成本高、费时多,而且一旦组成了电路,就很难再改动,因此不得不完全重新设计控制器。
微处理器与微计算机的先进技术和低廉的价格,给步进电机的控制开创了一个新的局面。人们完全可以借助于软件来对步进电机实施控制,从而实现复杂而成本又不高的控制系统, 同时还可以很灵活地通过改变程序来改变控制方案。
二、步进电机控制系统细分驱动原理
步进电机的工作原理本质上靠励磁绕组产生的旋转的合磁场带动转子做同步运动翻。不细分时步进电机的合磁场将以一个固定的角度旋转,如果对这个角度进行细分,那么就可以实现对步距角的细分。由于励磁绕组通电之后产生磁通量正比于电流的大小。因而只要控制各个绕组的电流的大小和方向就可以控制步进电机各个绕组产生的合磁场的大小和方向。当步进电机工作在整步或半步时,只需对绕组进行正、反向通断电控制。工作在细分状态下就需要精确控制流过绕组电流的大小。细分驱动技术主要是通过对步进电机的相电流进行阶梯化控制,使电机以足够小的单位步距角运行。从而减小步长和低频振动。提高电机的运行分辨率。
通过对相电流的均匀细分就能使步距角均匀n细分,这是在相电流与步距角之间为线性关系的前提下才能成立的。而实际上。由于步进电机磁化曲线本身的非线性和磁滞现象等因素的影响,等分相电流并不能等分步距角,而必须根据步距角和相电流的关系曲线,对各相电流加以控制和修正,才能实现步进电机步距角的均匀细分。另一方面合成磁场的幅值决定了步进电机旋转力矩的大小,相邻两合成磁场矢量之间的夹角大小决定了步距角的大小。因此提出了一种恒流均匀细分控制的方法,它的基本思想是:维持步进电机内部合成磁场的幅值恒定,合成磁场的方向均匀变化。对于那种完全用硬件来实现步进电机细分的驱动电路,要进行恒力矩均匀细分控制是相当困难的,但是对于单片机控制的步进电机细分驱动电路,实现这种控制就容易多了,它通过软件可以相应的数字量存储于EPROM的不同区域,采用软件查表法输出细分电流的控制信号。
三、步进电机控制系统
本系统采用单片机控制步进电机,可以很方便地使不同相数的步进电机按任一种可行的通电方式进行控制。图1是单片机控制步进电机系统的原理框图。
圈1 单片机控制步进电机系统原理框图
1单片机及其接口电路
本系统以MCS51系列8031单片机作为整个系统的控制中枢。由于考虑到系统的扩展,外接可编程的I/O接口芯片825用于LED显示、打印机、步进电机等的接口。图2是单片机及其接口电路的原理框图。
图2 单片机及其接口电路原理框图
2系统直流电源
微型计算机及其接口一般要求一种或多种电源电压,这些电压的波动必须保持在标称值的±5%以内,具有足够的稳定度,否则整个系统就难以做到稳定地工作,而且也会影响测量的精度。根据系统的要求,设计了+5V和+24V直流电源,如图3所示。
图3 系统直流电源
图中采用三端集成稳压器,提高了整个控制系统的可靠性。所谓集成稳压器一般是指把经过整流的不稳定电压转换成为稳定的输出电压的集成电路。这类器件一般具有较好的电压调整特性、负载调整特性、抑制输入电压交流成分特性、温度稳定性和过热、过电流及安全工作区自动保护功能。
3步进电机驱动电路
本系统以单片机的I/O口8255A口作为单片机与步进电机的接口。由于A口驱动能力有限,而被控制的步进电机要求高电压和大电流,所以在A口之后必须加一个驱动电路。图4所示为步进电机的驱动电路。
图4 步进电机驱动电路
图中只画出一相的驱动电路,其余两相与之完全相同。在图4中,三极管T1起着开关的作用。当三极管截止时,无集电极电流流通,开关相当于断开;当三极管饱和时,流过最大的集电极电流,开关相当于闭合。而开关作用可由加于基极的电流来控制。
驱动电路由T2T3。两个三极管组成达林顿式功率放大,驱动步进电机的3个绕组,使电机绕组的静态电流达到近2A。
电路中使用光电耦合器将控制和驱动信号加以隔离。当控制输入信号为低电平时,T1截止,输出高电平,则红外发光二极管截止,光敏三极管不导通,因此绕组中无电流流过;当输入信号为高电平时,T1饱和导通,于是红外发光二极管被点亮,使光敏三极管导通,向功率驱动级晶体管提供基极电流,使其导通,绕组被加电产生电流。
步进电机绕组中串联电阻Ra的目的是为了限制绕组中的电流,因为绕组的直流电阻很小。绕组并联一个二极管是为了在绕组断电时提供磁能释放回路,而不致使晶体管损坏。
电路中使用光耦合器件的作用主要体现在以下3方面:
(1)实现微计算机与外部现场不同电平之间的转换。
(2)实现微计算机与外部现场的隔离, 防止外部干扰窜人微机内部造成破坏,保证系统安全可靠地工作。
(3)实现微计算机系统的地线与外部现场的地线分别连接,用以消除地线干扰,同时可利用光电隔离管的低通低能去掉现场窜人的高频干扰信号,提高系统的可靠性。
三、步进电机控制程序的设计
1中断服务程序
本系统利用T0产生定时中断,主要用来完成计算和控制。
2步进电机控制子程序
步进电机各相绕组通电顺序不同,转动方向就不同。步进电机控制子程序的主要任务是判断旋转方向,按顺序送出控制脉冲,并判断所要送的脉冲是否送完。
本系统步进电机采用三相六拍运转方式。若步进电机按A—AB—B—Bc—c—cA—A顺序通电,步进电机正转;若按相反方向通电,步进电机反转。产生时序脉冲的方法是:
(1) 用单片机的I/0口8255A口低三位分别控制三相步进电机的A、B、C相绕组。
(2) 根据控制方式找出控制模型。
(3)按控制模型的顺序,向步进电机输入控制脉冲。
根据以上思路编写步进电机控制子程序的流程图,如图5所示。其中,步进电机所要走的步数需事先存放在寄存器中,转向标志可以存放在程序状态寄存器用户标志位中。当标志位为零时,步进电机正转;当标志位为“1”时,步进电机反转。正转和反转模型分别存放在片内或片外RAM中。
图5 中断服务程序流程图
结束语
本文所研究的步进电机控制系统的脉冲检测,中断处理,现场保护,重置初态.恢复控制等,对于用软件实现直线扦补的步进电机控制系统具有重要的意义。
参考文献
[1] 朱海君,张硕成,乔卫民,梁义海.步进电机控制系统的设计及其应用[J]. 核技术. 2005(06)
[2] 姜德美,谢守勇,甘露萍.步进电机启动控制算法设计[J]. 西南大学学报(自然科学版). 2007(05)
【关键词】单片机;步进电机;开关控制;驱动芯片
1 概述
随着国民经济的快速发展以及科学技术水平的不断提高,人们对生产水平和生活质量要求越来越高。在现代化技术水平空前发达的今天,人们为了追求高效率的工业生产和高质量的日常生活,将电动机应用到社会各行业的各个领域。伴着微电子技术和数字化技术的发展,数字控制技术在电动机控制领域得到了广泛而又深入的发展,而步进电机作为继直流电机和交流电机后后的第三类电动机,以其独特的支持数字化控制的特性,在自动化控制系统下,改变了传统电动机的机电能量转换的角色,在人类的生产生活迈进电气化时代的过程中起到了关键性的作用。
2 步进电机
步进电机是将电脉冲信号转变为角位移进而转化成线位移的开环控制元件,它在一种在矩形电脉冲的控制下,按照设定方向转动固定角度从而实现特定位移的执行电机。当有脉冲信号发送到步进电机驱动接收器中,步进驱动器就会驱动步进电机按照既定方向转动一个固定的角度,也就是“步距角”,从而实现固定的位移。对步进电机来说,“步距角”是固定不变的,是步进电机的走一步的距离,属于步进电机的固有属性,而对步进电机所有的控制都是步进电机一步一步“走”出来的。我们可以通过设定发送给步进电机的电脉冲的个数来控制步进电机总的角位移,从而实现位置的改变,通过控制发送步进电机电脉冲的频率来控制步进电机角位移的速度和角速度,从而实现位置上的调速。
3 单片机控制步进电机
由于步进电机结构简单、数字化控制方便、运行可靠以及步距角不受外界环境变化的影响、误差不长期积累等优点,被广泛应用到打印机、照相机、雕刻机等消费类产品,数控机床、工业机器人等工业控制以及各种医疗器械等机电产品中,单片机成本低、体较小、易编程等优点使其成为步进电机的完美搭档,在步进电机的控制系统中,可以实现对转动速度和方向的稳定可靠高效的控制。
3.1基于单片机的步进电机控制系统框架
基于单片机来控制步进电机进行运转的系统是以单片机为核心,配合单片机最小系统的时钟电路、复位电路,来控制步进电机运转。如图1.所示,为单片机控制步进电机系统框架结构图。
图1 单片机控制步进电机系统框架结构图
该控制系统中,其中单片机型号为AT89C51,为整个系统提供控制指令的输出,时钟电路和复位电路为单片机最小系统的所必须的电路,开关控制电路只要是为用户提供外部接口来人为地控制步进电机的状态,显示电路显示当前步进电机的运行状态,ULN2003芯片是步进电机的驱动芯片。
3.2单片机控制系统程序设计流程
使用P3端口读取人为的键盘按键的信号,P0端口控制步进电机的工作模式。
(1)初始化单片机,初始化定时器/计数器,数据传送端口,芯片使能以及初始数据赋值
(2)检查步进电机状态,是否处于使能状态
(3)检测P3口的状态
a.如果正转按钮被按下,选择较当前定时器的初始数据大的最小值赋值给定时器进行定时(单片机上电是步进电机停止,相当于控制信号频率为0,定时时间无穷大),然后发送信号将步进电机使能,并启动定时器开始计时。
b.如果加速按钮被按下,选择较当前定时器的初始数据小的最大值赋值给定时器进行定时,并启动定时器开始计时。
c.如果减速按钮被按下,选择较当前定时器的初始数据大的最小值赋值给定时器进行定时,并启动定时器开始计时。
d.如果停止按钮被按下,停止定时器/计数器工作,停止改变连接步进电机端口值,并将步进电机使能端无效。
e.如果反转按钮被按下,检查当前定时器定时是否处于较小值,如果值较小,先停止定时器/计数器工作和改变端口值,然后发送控制信号为步进电机提供正序换相通电,并判断P0.0是否为0,如果不是,将其赋值为0,再启动定时器/计数器工作。
(4)当定时器定时结束时,将当前连接步进电机的端口的值取反。
3.3步进电机工作流程
根据上述单片机程序流程,可以知道步进电机控制系统的工作流程。当单片机和步进电机的电源开关打开后,会看到“停止”的指示灯亮;当按下正转开关,然后按下加速开关后,“停止”指示灯熄灭,“正转”指示灯亮,步进电机按照较小的速度运转;然后继续按下加速,步进电机速度加快,当多次按下加速按钮后,步进电机不再加速,而是保持一个较高的速度运转;按下“减速”按钮,步进电机速度减慢;继续按下“减速”按钮,步进电机速度继续减慢直到停止运转;按下“反转”按钮,“正转”指示灯熄灭,“反转”指示灯亮;按下“加速”开关,步进电机运转速度增加;按下“减速”开关,步进电机运转速度减小。
4 总结
单片机控制步进电机工作,主要是根据步进电机的工作特性,按照人为的意愿来编写程序代码,并通过一定的驱动电路或者芯片来驱动步进电机工作。当然,在实际的开发中还有很多细节应该注意,比如在步进电机反转时要求此时转速较小,以免破坏步进电机等,从而使单片机提供稳定的信号来控制步进电机运转。
参考文献:
[1]顾永南.基于PLC的步进电机控制方法分析[J].电源技术应用.2013(10)
[2]赵敏,刘新妹,李晓飞.步进电机变速控制系统的设计[J].可编程控制器与工厂自动化.2013(12)
【关键词】 步进电机 单片机 控制技术
1 步进电机控制系统
步进电机控制系统是一个有机的完整的整体,由运动控制系统和操作控制系统组成"由操作系统完成把操作者的操作转化为运动控制系统能接受的电信号,运动控制系统随之作出反应,完成规定动作。步进电机是数控式电机,其最大特点是通过输入脉冲信号来进行控制,即电机的总转动角度由输入脉冲数决定,而电机的转速由脉冲信号频率决定"它具有输入脉冲与电机轴转角成比例的特征,将脉冲信号转变成角位移,即给一个脉冲信号,步进电机就转动一个角度,因此非常适合于单片机控制。采用单片机作为控制核心的控制系统如图1。
采用单片机来控制步进电机,实现了软件与硬件相结合的控制方法"用软件代替环形分配器,达到了对步进电机的最佳控制"系统中采用并行控制,用单片机接口线直接去控制步进电机各相驱动电路"通过软件的控制,单片机按顺序给绕组施加有序的脉冲电流,就可以控制电机的转动,从而实现数字角度的转换"转动的角度大小与施加的脉冲数成正比,转动的速度与脉冲频率成正比,而转动方向则与脉冲的顺序有关。整个系统以单片机为核心,设计出硬件系统"以其中的几个口控制驱动电路,由于步进电机工作时,电机绕组内的电流值一般都能达到数安培,而控制电机绕组内电流变化的控制信号一般都是由逻辑电路产生的数字信号,电压一般比较低,为了防止单片机或控制信号等受到后级模拟电路的干扰,通常在驱动电源的设计时都要设计电压隔离接口,以便把数字信号和模拟信号隔离开.所以将光电隔离电路接在驱动电路和单片机出口之间。
2 系统硬件设计
硬件是整个系统的平台,各种功能的实现和软件的运行都是以硬件为基础的,所以硬件设计的合理与否从根本上决定了整个系统的质量(如图2)。
本系统由电源显示(指示)单片机(MCU)按键电路看门狗电路和电机驱动电路等组成"系统中采用并行控制,用单片机接口线直接去控制步进电机各相驱动电路"键盘作为一个外部中断源,设置了步进电机正转反转档次停止等功能,采用中断和查询相结合的方法来调用中断服务程序,完成对步进电机的最佳控制,显示器及时显示正转反转速度等状态。
AT89C2051提供以下标准功能:2KB Flash存储器;128字节RAM;15条1/0引线;两个16位可编程定时器/计数器;1个5向量2级中断结构;1个全双工UART口;1个精密模拟比较器以及片内振荡器和时钟电路,此外AT89C2051是用可降到0频率的静态逻辑操作设计的,并支持两种可选的软件节电方式"空闲方式停止CPU工作,但允许RAM定时器/计数器!串行口和中断系统继续工作"方式保存RAM内容,但振荡器停止工作,并禁止所有其它部件的工作直
到下一个硬件复位,系统端口分配:
(1)Pl.0一Pl.3输出BCD码到七段显示译码器CD4511,用于控制显示的数码
(2)PI.4一Pl.6:显示动态扫描位选线,键盘扫描输出线
(3)Pl.7:WTD(看门狗MAX813)定时器复位输出口
(4)P3.0:方向指示LED控制口
(5)P3.1:工作方式指示LED控制口
(6)P3.2、P3.3:键盘扫描返回线
(7)P3.4、P3.5、P3.6,步进电机控制脉冲输出口
显示电路设计(如图3)。
几乎所有的单片机都需要复位电路,对复位电路的基本要求是:在单片机上电时能可靠复位;另外,单片机系统在工作时,由于干扰等各种因素的影响,有可能出现死机现象导致单片机系统无法正常工作,为了克服这一现象,就产生了看门狗这一电路。
(l)运用监控电网及空间存在着丰富的电磁波,对微机系统随时会造成电磁干扰,可能使CPU的运行出现死机!程序跑飞或进入死循环等,看门狗会让CPU复位,从而使CPU的运行重新回到正常的工作程序中。
(2)电压监控比如在系统上电初始阶段和在欠压情况下,系统各部件可能出现不确定状态,造成意外操作,这时看门狗能使CPU复位而停止运行,直到电源电压正常稳定才恢复运行。
(3)有些系统还要求在掉电瞬间能够把运行中一些重要的数据保存下来,因掉电是很随机的,看门狗中往往集成了电源监控电路,在掉电刚发生的时候能通知单片机保存重要数据。
关键词:89S51;步进电机;达林顿管
Abstract:Take the monolithic integrated circuit as the core, unifies through the hardware and the software, step-by-stepped the electric motor with automatic and the manual method control to complete X direction and the Y direction movement control, the system has included the keyboard entry electric circuit, the monolithic integrated circuit master control electric circuit, the display circuit and the actuation electric circuit and two stepping motors. The master control electric circuit uses 89S51 monolithic integrated circuit, from P3 mouth keyboard entry, P1 mouth output control step-by-steps the electric motor pulse sequence, P0 and P2 mouth output demonstration signal. The display circuit use altogether positive numerical code tube realization the coordinates parameter demonstration which establishes from the keyboard. Actuates between the electric circuit and the master control electric circuit uses the optical coupler to realize the isolation. Outputs from the monolithic integrated circuit P1 mouth output pulse sequence through the Darington tube TIP122's enlargement to X direction and Y direction two step-by-steps the electrical machinery, thus realization system in X and Y two direction hoisting controls.
Key words:89S51; stepping motor;drington tube
中图分类号:TM3文献标识码:A 文章编号:2095-2104(2012)
引言
随着经济的发展,步进电机在车床、机器人等精密控制领域的使用越来越广泛,而实现更准确、更智能、更安全高效的控制步进电机是当前最迫切需要。
使用单片机对步进电机进行控制,可以使控制更简单、更精确,并且扩展性更好。
步进电动机工作原理
电动机定子上有A、B、C三对磁极,磁极上绕有线圈,分别称之为A相、B相和C相,而转子则是一个带齿的铁心,这种步进电动机称之为三相步进电动机。如果在线圈中通以直流电,就会产生磁场,当A、B、C三个磁极的线圈依次轮流通电,则A、B、C三对磁极就依次轮流产生磁场吸引转子转动。 首先有一相线圈(设为A相)通电,则转子1、3两齿被磁极A吸住,转子就停留在第一个位置上。然后,A相断电,6相通电,则磁极A的磁场消失磁极B产生了磁场,磁极召的磁场把离它最近的2、4两齿吸引过去,停止在第二个位置上,这时转子逆时针转了30°。再接下去B相断电,C相通电。根据同样道理,转子又逆时针转了30°,停止在第三个位置上。若再A相通电,C相断开,那么转子再逆转30°,使磁极A的磁场把2、4两个齿吸住。定子各相轮流通电一次转子转过一个齿。这样按ABCABCA…次序轮流通电,步进电动机就一步一步地按逆时针方向旋转。通电线圈每转换一次,步进电动机旋转30°,我们把步进电动机每步转过的角度称之为步距角。如果把步进电动机通电线圈转换的次序倒过来换成ACBACB…的顺序,则步进电动机将按顺时针方向旋转,所以要改变步进电动机的旋转方向可以在任何一相通电时进行。
系统结构设计
系统设计要求
A. 能用单片机控制两台步进电机,实现吊装控制;
B. 能实现变速和匀速控制。
系统组成
系统硬件包括键盘输入电路、单片机主控电路、显示电路、驱动放大电路以及X方向和Y方向两个步进电机。
主控电路的P3口从键盘接收控制信号,然后对接收到的信号判别和进行对应的运算,从P1口输出对应的脉冲序列,同时从P0和P2口输出显示信号,显示电路完成对具体坐标的显示;脉冲序列通过驱动电路的放大,输出到X和Y两个方向的步进电机。从而实现从键盘输入到系统的控制。
硬件电路设计
步进电机选择
实验步进电机使用的是混合式4相步进电机,其工作电压较低只有3.6V,单步相位,经过软件细分,可以做到单步相位。
步进电机驱动部分
由于此步进电机的电流较大1.2A,开始设计时使用了达林顿阵列芯片ULN2003A来驱动,但该芯片单路工作最大电流仅提供0.5A,工作后不久,芯片温度急剧上升,故未采用此方案,而是自己搭建达林顿阵列,选用了TIP122达林顿管,电流可达5A,已完全满足电路的设计要求。
键盘输入部分
为了能够进行人机交互,必须有键盘输入系统,考虑到本系统并不需要太多的按键信息,故采用普通的非编码键盘.简单的按键电路,可以实现在按下的时候是高电平。
方案一:用电容消除抖动。
方案二:在单片机程序里用10MS再检测来消除抖动。
主控电路部分
关键词: 可控电源;步进电机;89C2051
引言
步进电动机驱动方式主要分为恒压驱动、恒流驱动、细分驱动等,其中恒压驱动是成本最低、最简单的解决方案,但是它的显著缺点是:高频力矩下降较快,无法满足某些应用场合的要求。另外,目前市场上几乎所有的步进电机驱动器都存在着低频热耗散大的缺点。在成本压力较大、对功耗和高低频力矩都有较高要求的情况下,如何取舍是一件很难抉择的事情。
本设计通过一个低成本可控电源,针对控制频率的全程范围,相应输出若干段电压,低频低压、高频高压。同时,在同一频率下采用高低压驱动法,在电机启动时刻提供高电压,力矩保持阶段提供低电压,从而实现了低成本下的高频力矩提升、低频功耗下降的优良效果。
硬件设计
系统硬件电路主要由单片机电路、可控电源电路和步进电机驱动电路构成。单片机采用ATMEL公司的89C2051。实际应用中,用其P1口低4位输出控制信号给可控电源电路,使可控电源输出不同梯次的驱动电压,当控制信号为“0000”时输出电压最低,控制信号为“1111”时输出电压最高,P1口高4位用于输出相序控制信号给四相步进电机驱动电路,单片机根据控制策略决定驱动电压的高低和相序的变化。
可控电源
可控电源部分主要由LM2576-ADJ、缓冲器、电阻、二极管组成,电路如图1所示。图中LM2576-ADJ是一个降压型开关稳压源,其输出电压为:
插电压公式
其中VH为缓冲器输出的高电平电压,VD为二极管结压降,VREF为参考电压,Di为单片机I/O口数字量输出。电路中采用缓冲器是为了提高高电平输出的稳定性和电流驱动能力,权电阻网络在单片机I/O口数字量控制下向VREF节点提供电流从而改变输出电压Vout二极管的作用是防止控制信号为低电平时产生反相电流。本设计采用4位I/O控制信号,形成了4位8级可调电源。
四相步进电机驱动电路
图2所示为四相单极性步进电机驱动电路,主要由MOSFET、续流二极管、电阻组成。单片机I/O口输出信号MA、MB、MC、MD为高电平时,相应的开关管MOSFET导通,Vout向对应的电机绕组供电。电路中为了减小驱动元件的压降,采用了具有低导通电阻特性的MOSFET器件,利用二极管和电阻构成电机绕组的续流回路,避免了MOSFET器件在换相时由于瞬间电压过高而击穿。
控制方案及软件设计
为了实现高频力矩提升、低频功耗下降的目的,设计中采用了高低压驱动和驱动电压根据频率分段而调整相结合的控制策略。
高低压驱动方案
图3所示为单片机输出的步进电机相序控制信号MA、MB、MC、MD与驱动电压Vout的时序关系。控制相序依次为:ABBCCDDAAB…。图中可见,步进电机每走一步驱动电压首先变高为Uf,然后再变低为UO,即在电机启动时刻提供高电压,力矩保持阶段提供低电压。Uf值高于UO值的目的为了使电机保持较高的动态转矩,经过T1时间后,驱动电压变成UO,以便给电机提供较低的维持转矩所需的电流。T1的值是固定的,当频率较低时T远远大于T1,此时电源输出的平均电压低,功耗也低,电机做的功低。当频率提高时,T减小,一个周期内U0电压在时间轴上所占比例减小,电源消耗的功率增大,电机做功较大,当T小于等于T1时,驱动电压为一个恒定值Uf,从而实现了低频低功耗,高频高能量供给的优化驱动模式,避免了常用驱动电路低频热耗散大的缺点。
根据频率分段调整驱动电压的控制
实际应用中,将工作频率范围分成若干段,不同频率段对应不同的驱动电压值,频率越高驱动电压越大。由于步进电机绕组是感性负载,换相过程中驱动回路电流变化率越大,电机的动态响应速度越快,动态转矩越大。而电流变化率是与驱动电压成正比的。所以本控制方案大大提高了步进电机的高频转矩。
步进电机驱动控制软件
根据上述控制方案,设计了步进电机驱动程序。根据经验值预先建立了不同段频率与相应驱动电压控制码的对应关系表,并存入系统存储器。运行过程中依据当前工作频率,对应出每步周期T,再通过查表确定驱动电压控制代码,并由口P13-P10输出给可控电源,同时口P17-P14输出相序控制信号。另外,驱动电压Uf建立时间T1决定了高压输出在每步驱动中所占的比例,T1时间到,则变成维持电压UO(低压)供电,从而实现了高低压驱动。
应用情况与结果
Abstract: With the increased demand of mechanical and electrical products on the winding quality,the original PLC control system of winding machine has been difficult to meet the requirements of evolving mechanical and electrical products. Winding machine PLC control system has the disadvantages of high cost,single work way and inconvenient human computer interaction. To solve this problem,we designed a new control system that could replace PLC control system - using single chip to control motor windings machine controller.
关键词:单片机;步进电机驱动器;加/减速控制
Key words: singlechip;stepper motor driver;accelerate/deceleration control
中图分类号:F270 文献标识码:A文章编号:1006-4311(2010)12-0218-01
1系统性能及控制要求
1.1 系统性能
在本控制系统中,主要利用控制器输出的CP、CW脉冲信号,通过步进电机驱动器对三台步进电机的转速、转向进行控制,带动机械传动机构工作,实现绕线,另外通过拖板电机实现绕组位置转动的控制,从而实现整个电机绕组的全自动化绕线操作。在生产过程中,可以根据操作的要求实现不同的绕线速度、线圈匝数等的设定。
1.2 控制要求
1.2.1 可预设多种控制模式。可预先设定慢速、中速、快速和拖板运行等四种操作模式。
1.2.2 每种控制模式下的加减速、步数可随意设定。在任一控制模式下的加减速曲线、运行步数都可事先设定。
1.2.3 可同时控制三台电机的同步工作和单独控制一台拖板电机工作。
1.2.4 具有断电数据保持功能,能记忆上次的参数及最后一次运行值。
1.2.5 具有数据显示及告警提示功能。
2设计方案的实现
2.1 硬件电路设计
2.1.1 整体电路设计思想。本设计采用STC89C51系列单片机芯片对步进电机进行控制,通过I/O口输出具有时序的方波作为步进电机的控制信号,信号经过步进电机驱动器驱动步进电机工作;同时采用二极管矩阵键盘来对电机的状态或设置进行控制,并用4位LED数码管显示出相关的参数,还利用AT24C02对系统参数进行存储。
2.1.2 各功能电路的实现。①电源电路。将交流220V经过降压、整流、滤波和稳压的形式,得到直流9V和5V对控制器进行供电。②单片机最小系统电路。本单片机系统采用宏晶科技推出的新一代超强抗干扰/高速/低功耗的STC89C51系列单片机芯片,它是MCS-51系列单片机的派生产品;它们在指令系统中、硬件系统和片内资源与标准的51系列单片机完全兼容。③键盘电路。采用二极管矩阵键盘电路,分别由P1.0-1.3作输入,当某一按键被按下时,相对应的端口被置为高电平,此时CPU检测到相应端口的变化,通过查表的方式确认按键的功能,减少CPU对各端口扫描时间,提高CPU的效率。④显示电路。采用4只共阳数码管作显示,分别利用P0口对各数码管的笔划段进行扫描,P2.4-2.7口作循环扫描显示控制,另外还通过P2和P3口作按键显示和告警音提示等功能控制。⑤存储电路。由于本系统需要存储的数据比较多,并且要具有断电数据保持功能,能对上次的参数及运行值进行记录,因此采用AT24C02存储器作数据存储。⑥接口电路。分别利用P1.4、P3.5、P3.4口经过ULM2003反相放大后作CP脉冲和CW脉冲的信号输出,对步进电机驱动器进行控制,从而达到控制步进电机转速和转向的目的。
2.2 软件程序设计
在该系统中,相应的控制信号由单片机来产生,根据需要通过键盘输入电机的转动方向、转动速度及转动步数,在工作时用数码管来动态显示运行的步数。所以软件部分由4大模块组成:系统监控、键盘扫描及处理、显示程序、控制信号产生程序。
2.2.1 系统监控模块。在监控模块中,应完成系统的启动,进行键盘扫描得到相应键值,完成对步进电机转向转速、步数及运行方式的设置,并使步进电机按要求进行工作。为增加控制的灵活性,键盘输入数据及启动命令在键盘扫描及处理程序中实现。
2.2.2 键盘扫描及处理、显示模块。本软件程序模块主要完成对键盘有无键按下进行确认。当有键按下时,通过查表方式确定按键值,并根据所得键值进行处理,包括所按键是输入键还是执行键。显示模块主要是完成在进行数据输入时,显示输入的数据值。
2.2.3 控制信号产生模块。①步进脉冲的产生。在采用单片机控制的步进电机开环系统中,控制系统的CP脉冲的频率或者CW换向脉冲的高低电平实际上就是控制步进电机的运行速度和方向。②步进电机起动及加/减速控制。速度控制中加/减控制是最基本的控制。电机由静止到达设定的最大的速度所需的时间是由调试决定的。加速度太大,电机甚至不能克服负载转矩而失步,加速度太少,则完成指定的运动耗费时间太多,加速度有两种方案:线性加/减速度控制和等步距加/减速度控制。③步进电机的换向控制。一般来说,驱动器的输入共有三路,它们是:步进脉冲信号CP、方向电平CW、脱机使能信号EN。它们在驱动器内部分别通过限流电阻接入光藕的负输入端,且电路形式完全相同,在这三路输入信号的共同的控制下,驱动器将输入合适的电流来控制步进电机完成指定的操作。
3结论
本控制器采用单片机控制的步进电机系统,其转动方向、转动速度及运行圈数可以通过键盘输入,运用程序对这些数据进行处理,由单片机发出相应的控制信号,增加了控制的灵活性,经实践使用,达到了预期的设计目的。本控制器对于不同的绕线系统,不同控制要求,通过修改相应的电路及相关程序即可实现,通用性强,具有自动化程度高、成本低、体积小、控制精确等优点,有很好的经济效益和广阔发展前景。
参考文献:
[1]刘国永,陈杰平.单片机控制步进电机系统设计[J].安徽技术师范学院学报,2002.
关键词:单片机 步进电机 细分驱动 控制
细分驱动是能够有效改善步进电机上述缺陷的技术,与常规的步进电机驱动电路的主要不同在于环形分配器:对每相脉冲按照一定的要求进行细分。目前广泛应用的以计数器和EPROM构成的细分驱动器有数据位宽的限制,当相数上升和细分数加大时,环分器的复杂性大大增加。对于利用单片机实现细分驱动的细分驱动器,由于单片机是一种非并行执行的器件,各信一号的同步受到一定影响,而且是一种软件模式,可靠性不高,易产生失步。步进电机的性能在很大程度上取决于所用的驱动器,改善驱动器的性能,可以显著地提高步进电机的性能。
1步进电机的细分技术
步进电机是一种将电脉冲转化为角位移的执行机构,通俗一点讲,当步进驱动器接收到一个脉冲信号时,它就驱动步进电机按设定的方向转动一个固定的角度(及步进角)。可以通过控制脉冲个数来控制角位移量,从而达到准确定位的目的;同时,可以通过控制脉冲频率来控制电机转动的速度和加速度,从而达到调速的目的。按结构步进电机可分3种:永磁式(PM)、反应式(VR)和混合式(HB)。永磁式步进一般为两相,转矩和体积较小,步进角一般为7.5°或15°。反应式步进一般为三相,可实现大转矩输出,步进角一般为,但噪声和振动都很大,在发达国家早已被淘汰。混合式步进是指混合了永磁式和反应式的优点,它又分为两相和五相:两相步进角一般为1.8°而五相步进角一般为0.72°,这种步进电机的应用最为广泛。
步进电机的步距 (Zr为齿数,N为拍数),由于受制作工艺的限制齿数不能做得很多,因此步进电机的步距角就不可能很小, 而带来步进时存在明显的脉振不能精密移位的问题。
2步距细分的系统构成
步进电机细分驱动电路系统是由PWM计数器、波形ROM地址计数器、PWM波形ROM存储器、比较器、功放电路等组成。其中,PWM计数器在脉冲时钟作用下递增计数,产生阶梯上升的周期性锯齿波,同时加载到各数字比较器的另一端;PWM波形ROM输出的数据A[3..0], B[3..0], C[3..0],D [3. . 0]分别加载到各数字比较器的另一端。当PWM计数器的计数值小于波形ROM输出值时,比较器输出低电平;当PWM计数器值大于波形ROM输出值时,比较器输出高电平。由此可输出周期性的PWM波形。根据步进电机八分细分电流的要求,将各个时刻细分电流波形的要求,将各个时刻细分电流波形所对应的数值存放于波形ROM中,波形ROM的地址由地址计数器产生。通过对地址计数器进行控制,可以改变步进电机的旋转方向、转动速度、工作/停止状态。FPGA产生的PWM信号控制各功率管驱动电路的导通和关断,其中PWM信号随ROM数据而变化,改变输出信号的占空比,达到限流及细分控制,最终使电机绕组呈现阶梯形变化,从而实现步距细分的目的。
3基于单片机的步进电机细分驱动系统总体实现
本设计中,FPGA主要承担产生电机的四相驱动信号、控制转速、转向功能。单片机主要计算分析ADC0809采集到的细分数、转速、转向等信息,并在液晶屏上显示,可让操作人员方便直观地了解系统状态,当系统出现电压或电流异常,控制声光报警系统进行报警。
3.1硬件构成
本控制系统以AT89C2051单片机为核心。结合步进电动机双极性驱动芯片NJM3777驱动步进电动机,且通过一个双7bit数/模转换器NJU39612分别调制对应于NJM3777上的参考电压VR,即组成了步进电机细分驱动控制系统。NJM3777实现恒流斩波控制是由开关方式获得的:绕组电流流过传感电阻RS,电流反馈电压信号送至比较器,比较器的另一个输入是参考电压VR,当反馈电压达到参考电压VR值时,比较器输出翻转重置RS触发器,关闭高侧输出晶体管。输出电流衰减,直至下一个时钟脉冲的到来,使触发器翻转,输出晶体管重新导通,每个周期这样重复,维持输出平均电流在一个恒定值上。NJM3777在不增加任何扩流器件时,可直接驱动步距角0.9/1.8°,驱动电压+24 V,脉冲相电流800 mA以下的两相混合式步进电机(例如BYG4501型等),以此构成的控制系统极为简单,具有较高的性价比。
3.2单片机软件设计
单片机软件包括主程序和中断子程序。主程序对系统进行必要的初始化,获得用户设定输入,包括运行模式设定(正/反转)以及预置数(细分次数、运行速度等)设定,根据不同的运行模式调用相应的子程序,开相应的中断。在系统上电初始化完毕后,除非出现电机故障,否则系统一直等待中断,若产生中断,则程序就转去执行相应的中断服务程序对电机的控制主要是在中断子程序中进行的。
在细分电流的驱动下,线性电流的驱动下,步进电机转子的微步进是不均匀的,呈现出明显的周期性波动。磁场的边界条件按齿槽情况呈周期性重复是导致步距角周期性变化的根本原因。同时,不可避免的摩擦负载以及其他负载力矩的波动导致失调角出现不规则的小变动或小跳跃,也使微步距曲线在周期性波动上出现不光滑的小锯齿形。步进电机的电流矩角特性并非线性函数,而是近似于正弦函数。若使电流按线性规律上升或下降,必然会造成每一细分步的步距角不均匀,从而影响步距精度。为此在设计中,需要提高LPM_ROM数据精度,将数据提高到16位,使输出的步进细分电流近似为正弦电流,这样不仅提高了步距精度,而且可以改善低频振荡。
结论
上述步进电机的细分驱动技术,根据电流矢量恒幅均匀旋转原理确立了基于单片机控制的细分驱动模式,本文针对超高精密定位和数控加工等场合对步进电动机提出的精确控制要求,设计出一种构造简单、成本低、集成度高、运行稳定可靠的细分驱动控制系统。
参考文献:
[1]程志国,王新洪. 步进电动机系统细分波形修正技术[J]. 微电机,2005,38(5):25-27.
关键词:步进电机控制系统,插补算法,变频调速,软硬件协同仿真
1引言
作为一种数字伺服执行元件,步进电机具有结构简单、运行可靠、控制方便、控制性能好等优点,广泛应用在数控机床、机器人、自动化仪表等领域。为了实现步进电机的简易运动控制,一般以单片机作为控制系统的微处理器,通过步进电机专用驱动芯片实现步进电机的速度和位置定位控制。
2圆弧插补改进算法
逐点比较插补算法因其算法简单、易实现且最大误差不超过一个脉冲当量,在步进电机的位置控制中应用的相当广泛[1]。圆弧插补中,为了确定一条圆弧的轨迹,可采用:给出圆心坐标、起点坐标和终点坐标;给出半径、起点和终点坐标;给出圆弧的三点坐标等。在算法实现时这些参数若要存放在单片机内部资源有限的数据存储器(RAM)中,如果要经过复杂的运算才能确定一段圆弧,不但给微处理器带来负担,而且要经过多步运算,往往会影响到算法的精确度。因此选取一种简单且精确度高的插补算法是非常必要的。本文提出了一种改进算法:在圆弧插补中,无论圆弧在任何位置,是顺圆或是逆圆,都以此圆弧的圆心作为原点来确定其他坐标。因此只须给出圆弧的起点坐标和圆弧角度就可以确定该圆弧。如果一个轴坐标用4个字节存储(如12.36),而角度用2个字节存储(如45°),则只需要10个字节即可确定一段二维的圆弧。较之起其他方法,最多可节省14个存储单元。现以第I象限逆圆弧为例,计算其终点坐标。如图1所示,(X0,Y0)为圆弧的起点坐标,(Xe,Ye)为圆弧的终点坐标,θ为圆弧的角度。
图1圆弧轨迹示意图
圆弧半径:,
终点坐标:
终点坐标相对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]。这种方法只有硬件电路完成之后才能进行系统功能测试,若此时发现硬件电路存在设计问题且必须进行修改时就会显著影响系统开发的成本和周期。为此,本文采用了系统软硬件协同仿真的开发方法,使得硬件电路实现前的功能测试成为可能。同时硬件电路的软件化仿真为硬件电路的设计与实现提供了有力的保障。其中在KeiluVision2集成开发环境下,实现步进电机控制系统的程序设计、编译、调试,并最终生成目标文件*.hex,而由英国ProteusLabcenterelectronics公司所提供的EDA工具Proteus则利用该目标文件*.hex实现对步进电机控制系统硬件电路功能的测试。
图4步进电机控制系统硬件电路仿真
如图4所示,单片机AT89C55司职步进电机控制器,通过运行在KeiluVision2环境下所开发的程序来控制两个步进电机驱动芯片L298,从而实现对AXIS_X/AXIS_Y两轴步进电机的联动控制。L298驱动芯片的步进脉冲输入信号来自AT89C55P0端口,使能信号ENABLEA与ENABLEB并联接到AT89C55的P3.0、P3.1口,由程序控制实现步进电机的使能,从而避免电机线圈处于短路状态而烧坏驱动芯片。4x4键盘阵列接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二维模拟工作平台运动轨迹
6结束语
本文在分析了传统的逐点比较插补原理的基础上提出了一种以最少的参数确定一条圆弧轨迹的插补方法。实现了一种有效的步进电机变频调速的方法。采用系统软硬件协同仿真的开发方法,使硬件电路实现前的功能测试成为现实,从而显著改善系统开发的成本和周期。该种方法同样也可以应用于其它类型控制系统的开发。
参考文献
[1]廖效果,朱启逑.数字控制机床.武汉:华中理工大学出版社.1999.3
【关键词】步进电机控制 计算机并行口
国外在大功率的工业设备驱动上,目前基本不使用大扭矩步进电动机,但是国外在小功率的场合,如工业器材、工业生产装备、打印机、复印件、速印机、银行自动柜员机,还是广泛的使用步进电机。
步进电机是一种简易的开环控制,步进电机具有快速启动和停止的能力,它的步距角和转动速度不受电压波动和负载变化的影响,也不受环境条件如温度、湿度、冲剂、振动等的影响,仅与驱动频率有关。它每转一周都有固定的步数,在不超载和延时合适的情况下,不会产生失步,其步距误差不会长期积累。步进电机不需位移传感器就可精确定位,所以在精确定位系统中应用广泛。
一、步进电机的控制系统设计
本次设计中使用的步进电机为12V的四相步进电机。四相步距电机的控制方法有四相单四拍,四相单、双八拍和四相双四拍三种控制方式。本系统中采用的是四相单四拍控制方法按照四相单四拍控制方法,电机正转时的控制顺序为ABCDA。I/O 的高四位的值参见表1。
表1
二、计算机并口引脚设计定义
标准的Centronics并行接口,可实现单字节的高速数据传输。接口插座为DB-25针型插座,其引脚序号如图1所示。
图1 计算机并口引脚序号
图2 计算机并口引脚的定义
并口引脚信号的定义如图2所示,并行接口输出的是TTL标准的逻辑电平,输入信号也要符合TTL标准。这种特性可以使接口容易应用在电子设计中。大部分的PC并行接口能吸收和输出12mA左右的电流,如应用时小于或大于这个值,应使用缓冲电路。在于计算机进行对接时候,电缆的最大长度是2m,最好使用带屏蔽线的双绞线电缆(每一对双绞线中,一根是信号线,另一根是用于屏蔽的地线)。
三、系统硬件设计
此控制系统,用数据端口D0―D7中的D0、D2、D4、D6也就是D型25针的第2、4、6、8针脚作为数据输出,第18―25针脚全部接地。由于并行口输出电平与TTL兼容,因此从硬件上来说从并行口出来家驱动后可直接控制步进电机,其他交由软件完成。
本次设计对步进电机的驱动是用4个三极管来完成的。在单片机控制步进电机中以2803A驱动,2803可以完成最大500mA的灌电流,而并口输出电平大约在1.8V左右,并口输出不能直接接入三极管而必须加电阻,笔者采用8050NPN型三极管,放大倍数大约为170,由此可计算出并口与三极管间接入2K电阻。硬件电路如图3所示。
图3 计算机控制的硬件电路图
并行口直接控制步进电机最大的难点在于如何在WindowsXP下访问并行端口。在DOS,Windows95/98系统里可以在VC++6.0环境下使用_outp()的API函数直接访问端口,但是由于基于系统安全的考虑WindowsXP不能直接获得端口的访问访问权限,所以只有通过第三方软件来实现对并行口的控制。使用Borland C++Bilder 6.0作为操作平台,通过编写访问打印口的TParallelPort 类(见附录B),这个类通过Yariv Kaplan的WinIo实现的底层操作。执行程序(见附录C),此程序实现了从D0―D7循环输出高电平,使4个三极管顺序循环导通取动步进电机四相,步进电机的计算机并口控制就实现了。
四、总结
关键词:PLC S7-300 步进电机 运动控制 接线图
0 引言
作为执行机构,步进电机可以将电脉冲信号转换成角位移,被广泛用于数字控制等控制系统中。基于微处理器的PLC适用于工业环境,通过其内部存储器可执行逻辑运算、定时、计数等操作指令[1]。随着PLC功能不断升级,其强大的组态功能实现了程序的模块化和参数设置的可视化,降低了程序编制的复杂性和出错率,用微小型PLC构成的各种步进电机运动控制系统具有控制简单、运行稳定等特点[2]。若为PLC增加功能扩展模块,无疑会增加产品成本。鉴于这一原因,本文研究一种结合定时器和计数器作为脉冲发生器实现用PLC控制步进电机运动功能的方法。
1 系统的总体设计
系统整体工作流程图如图1所示[3]。
系统硬件按功能分为四个部分:可编程序逻辑控制器、驱动器、步进电机和直流稳压电源;系统程序设计部分则主要包括主程序、子程序、仿真调试、烧写部分。此系统的核心控制部分选用S7-300的PLC,因此,系统程序设计是此运动控制系统的核心。
2 硬件的选择与连接
所选用的设备主要有可编程序逻辑控制器、两相混合式步进电机、两相混合感应式步进电机驱动器、直流稳压电源、数字万用表和PC机等[4],其运动控制系统原理图如图2所示。
在图2中,S7-300系列PLC的CPU模块选用CPU
314C-2DP;步进电机选用两相混合式57BYG H0408型,
可设置0.9°/1.8°两种步距角;选用的SJ-230M5型驱动器设置为2细分0.9°,相电流为2A;稳压直流电源提供的直流电压为24V,分别对PLC和驱动器提供直流电源,其中对于PLC连接驱动器模式,需在步进脉冲信号CP和方向电平信号DIR端上分别并联上1.8k的电阻以限流,为驱动器内部光耦提供8-15mA的驱动电流[5]。
3 系统程序设计
在此研究中,设定步进电机的运行过程为:启动正向慢速运行正向快速运行反向快速运行反向慢速运行停止,要求通过S7-300型PLC实现这一连续运动过程。
3.1 I/O地址分配 在进行程序设计之前,为了便于程序编写,需要对PLC系统的I/O信号进行地址分配,如表1所示。
3.2 系统程序编写 PLC是模块式结构,其程序编写可进行模块化,即将整个程序分为主程序和子程序两部分进行编写,以便调试与操作[3]。根据表1中I/O地址分配结果,进行程序编写。
3.2.1 主程序OB1。程序开始之后,首先进行初始化。初始化包括消除没有保持功能的位存储器、定时器和计数器,消除中断堆栈和块堆栈的内容,复位保存的硬件中断等。程序初始化之后,系统执行用户已编写程序的启动组织块OB1,完成用户设定的初始化操作,并对所用到的脉冲计数器进行初始化,然后调用步进电机运动控制工序步骤的子程序FC1。在主程序OB1中,由于步进电机驱动器的细分为2细分,则电机转子旋转一周所用脉冲数为400,故计数器C0-C3的脉冲计数值设定为400。
3.2.2 部分子程序FC1。根据闪烁电路产生脉冲序列的思想,利用定时器产生步进电机在不同工作方式下所需要的脉冲序列,然后按照控制开关状态输出到各相对应的输出点控制步进电机运动。
以正向慢速旋转到正向快速旋转为例,采用STL语言进行编写的部分子程序FC1如下:①正向慢速旋转。在正向慢速旋转程序中,应用到两个定时器(T1、T2)配合使用构成闪烁电路。首先对两个定时器进行合理的时间分配,取脉冲信号的高低电平宽度均为40ms,此时产生的脉冲序列作为慢速运行的驱动信号;然后,设置计数器的计数值为400;最后,由计数器C0的输出信号作为电机转速改变的一个控制信号。②正向快速旋转。在正向快速旋转程序中,应用到两个定时器(T3、T4)配合使用构成闪烁电路。首先对两个定时器进行合理的时间分配,取脉冲信号的高低电平宽度均为10ms,此时产生的脉冲序列作为快速运行的驱动信号;其它部分与正向慢速旋转部分程序相同。
4 实验结果与总结
首先对所编写的程序进行大量的仿真调试,当仿真结果基本达到预期目标时,再将程序烧写到S7-300型的PLC存储器中,在已搭建好的硬件电路中进行试验,以下即是仿真调试与试验运行中所观察并记录的结果,如图3所示。
对于两相步进电机,可以采用对A、B两相进行间歇通电的方式进行控制,由图3可知,宽脉冲是步进电机慢速运行的脉冲分配情况,而窄脉冲是步进电机快速运行的脉冲分配情况。通过记录步进电机在各种运行方式下的转速变化情况,可以绘制出步进电机的一个完整运行过程的速度变化图,如图4所示。由图4可知,步进电机的转速变化是直线上升或下降,这是由于314C-2DP型的PLC并没有使用加速度功能。
在工业控制系统中对步进电机进行控制时,常常会采用步进电机驱动器对其进行控制,此时可以考虑输出脉冲的频率以及步进电机的转向,而不用考虑各相的时序问题,因此,基于工业生产现场的条件下,为了获取比较稳定的脉冲序列,可以采用PLC作为脉冲发生器,该型控制器不仅控制程序简单,而且具有极强的抗干扰能力。
参考文献:
[1]廖常初.S7-200 PLC编程及应用[M].北京:机械工业出版社,2007:1-23.
[2]王永华.现代电气控制及PLC应用技术(第二版)[M].北京:北京航空航天大学出版社,2008:1-408.
[3]王滨生,孙晶.PLC在步进电机驱动系统中的应用[J].机床电器,2001(2).
基金项目:黑龙江省教育厅科学技术研究项目(12531524)。