《步进电机控制》PPT课件.ppt

上传人:小飞机 文档编号:5538224 上传时间:2023-07-19 格式:PPT 页数:47 大小:770KB
返回 下载 相关 举报
《步进电机控制》PPT课件.ppt_第1页
第1页 / 共47页
《步进电机控制》PPT课件.ppt_第2页
第2页 / 共47页
《步进电机控制》PPT课件.ppt_第3页
第3页 / 共47页
《步进电机控制》PPT课件.ppt_第4页
第4页 / 共47页
《步进电机控制》PPT课件.ppt_第5页
第5页 / 共47页
点击查看更多>>
资源描述

《《步进电机控制》PPT课件.ppt》由会员分享,可在线阅读,更多相关《《步进电机控制》PPT课件.ppt(47页珍藏版)》请在三一办公上搜索。

1、1,第十九讲 步进电机控制,单片机程序设计实践教程,2,19.0 项目演示效果,图XP_19_01 步骤1-步进电机控制的开机状态,3,图XP_19_02 步骤2-启动步进电机顺时针旋转,4,图XP_19_03 步骤3-步进电机逆时针1/8细分方式运行,5,19.1 项目目标设计,学习步进电机的基本工作原理;掌握步进电机的控制方法;学习TA8435H步进电机驱动芯片的基本工作原理;掌握TA8435H步进电机驱动芯片在本开发板中的应用方法和原理;学习通过82C55并行扩展芯片进行控制信号输出的编程技巧;掌握步进电机的控制电路的硬件连接方法;在达到以上六点目标的基础上,根据本章“项目扩展任务”中提

2、出的问题,以组或个人为单位,在规定时间里完成扩展项目任务。,6,19.2 项目任务,步进电机控制项目的电路原理图如图19-1所示,步进电机的控制信号由STC89C52RC单片机给出,但不是直接使用自己的端口进行控制,而是通过控制并行端口扩展芯片82C55的PB0PB5引脚的电平输出,间接控制TA8435H步进电机驱动芯片的运行。图19-1中的J15为后备的输入电源(另一路为USB供电和程序下载接口,这两路不能同时引入外接直流电源)接入端子,有5V和12V两级可以选择引入的直流电源。三端连接插线设置端子J16实现将TA8435H负载输入电压Vsel与上面引入的两路电源电压中的哪一路相连,方法是在

3、J16的不同插针间接插短接片。P1为4针端子,引出TA8435H对两相双极性步进电机的控制信号。,7,图19-1 步进电机控制项目的电路原理图,8,本项目应完成以下程序设计:打开开发板开关后,七段数码管相应位置显示OFF、F和1,分别表示步进电机关机、准备顺时针旋转和将要运行在整步方式。按压S1键,按照设定运行步进电机,数码管相应位置显示OE;按压S4键,关闭步进电机,数码管相应位置显示OFF;按压S5键,步进电机顺时针旋转,数码管相应位置显示F;按压S8键,步进电机逆时针旋转,数码管相应位置显示b;按压S9键,步进电机整步方式运行,数码管相应位置显示1;按压S10键,步进电机半步方式运行,数

4、码管相应位置显示2;按压S11键,步进电机1/4细分方式运行,数码管相应位置显示4;按压S12键,步进电机1/8细分方式运行,数码管相应位置显示8;按压其它键,不会引发步进电机动作。,9,19.3 系统板上硬件连线,本项目要求PMY单片机开发板上的短接片接CON1的07引脚、CON2的05引脚,J5和J7的2和3引脚分别短接。若板上引入12V电源,则应将J16的12V和Vsel短接;否则,短接5V和Vsel,其余连接插线不接,见图19-2步进电机控制的连接插线设置示意图。,图19-2 步进电机控制项目系统板硬件连线图,10,19.4 程序流程图,图19-3 步进电机控制项目的程序流程图,11,

5、19.5 C语言源程序(略),19.6 系统构成和程序分析,19.6.1 步进电机的结构和工作原理,步进电机作为执行元件,是机电一体化的关键产品之一,广泛应用在各种自动化控制系统中。随着微电子和计算机技术的发展,步进电机的需求量与日俱增,在各个国民经济领域都有应用【42】。步进电机是一种将电脉冲转化为角位移的执行机构。当步进驱动器接收到一个脉冲信号,就会驱动步进电机按设定的方向转动一个固定的角度(称为“步距角”),它的旋转是以固定的角度一步一步运行的。可以通过控制脉冲个数来控制角位移量,从而达到准确定位的目的,同时可以通过控制脉冲频率来控制电机转动的速度和加速度,从而达到调速的目的。,12,图

6、19-4 常见的两相混合式步进电机实物图,13,步进电机是一种控制用的特种电机,可利用其没有积累误差(精度为100%)的特点,应用于各种开环控制。比较常用的步进电机包括反应式步进电机(VR)、永磁式步进电机(PM)、混合式步进电机(HB)和单相式步进电机等,图19-4给出了一些最常见的两相混合式步进电机实物图。永磁式步进电机一般为两相,转矩和体积较小,步距角一般为7.5度或15度;反应式步进电机一般为三相,可实现大转矩输出,步距角一般为1.5度,但噪声和振动都很大。反应式步进电机的转子磁路由软磁材料制成,定子上有多相励磁绕组,利用磁导的变化产生转矩。,14,混合式步进电机是指混合了永磁式和反应

7、式的优点。它又分为两相和五相:两相步距角一般为1.8度,而五相步距角一般为 0.72度。这种步进电机的应用最为广泛,也是本开发板控制驱动方案所选用的步进电机类型。以三相电机为例,将步进电机内部的定转子平行展开【43】,如图19-5所示,可以看到电机转子均匀分布着很多小齿,定子齿有三个励磁绕阻,其几何轴线依次分别与转子齿轴线错开。相邻两转子齿轴线间的距离为齿距以T表示,即A与齿1相对齐,B与齿2向右错开1/3T,C与齿3向右错开2/3T,A与齿5相对齐,(A就是A,齿5就是齿1)。,15,图19-5 步进电机内部的定转子工作原理图,16,接着来看步进电机是如何旋转起来的。(1)、如A相通电,B、

8、C相不通电时,由于磁场作用,齿1与A对齐(最大磁导率、最小磁阻),转子不受任何力。(2)、如B相通电,A、C相不通电时,齿2应与B对齐,此时转子向右移过1/3T,齿3与C偏移为1/3T,齿4与A偏移(T-1/3T)=2/3T。(3)、如C相通电,A、B相不通电,齿3应与C对齐,转子又向右移过1/3T,此时齿4与A偏移为1/3T对齐。(4)、如A相通电,B、C相不通电,齿4与A对齐,转子又向右移过1/3T。这样经过A、B、C、A分别通电状态,齿4(即齿1前一齿)移到A相,电机转子向右转过一个齿距,如果不断地按A、B、C、A的顺序通电,每来一个脉冲电机就移位1/3T,方向向右旋转;如果按A、C、B

9、、A的顺序通电,电机就反转。,17,由此可见,步进电机的位置和速度与导电次数(脉冲数)和频率成一一对应关系,而方向由导电顺序决定。不过,出于对力矩、平稳、噪音及减少角度等方面的考虑,电机定子往往采用AABBBCCCAA的导电顺序,将原来每步移位1/3T改变为1/6T,甚至可以通过二相电流不同的组合,使移位由1/3T变为1/12T、1/24T。不难看出,电机定子上有m相励磁绕阻,其轴线分别与转子齿轴线偏1/m、2/m(m-1)/m,并且导电按一定的相序,就能控制电机正反转,这是步进电机旋转的物理条件。只要符合这一条件理论上可以制造任何相数的步进电机。出于成本等多方面考虑,市场上的步机电机一般以二

10、、三、四、五相为多。根据以上对步机电机工作原理的分析,可以引出以下一些步进电机的基本参数:,18,电机固有步距角:表示控制系统每发一个步进脉冲信号,电机所转动的角度。电机出厂时给出了一个步距角的值,如0.9/1.8(表示半步工作时为0.9、整步工作时为1.8),这个步距角可以称之为“电机固有步距角”,它不一定是电机实际工作时的真正步距角,真正的步距角和驱动器有关。步进电机的相数。是指电机内部的线圈组数,目前常用的有二相、三相、四相、五相步进电机。电机相数不同,其步距角也不同,一般二相电机的步距角为0.9/1.8、三相的为0.75/1.5、五相的为0.36/0.72。在没有细分驱动器时,用户主要

11、靠选择不同相数的步进电机来满足自己步距角的要求。如果使用细分驱动器,则相数将变得没有意义,用户只需在驱动器上改变细分数,就可以改变步距角。,19,保持转矩(HOLDING TORQUE):是指步进电机通电但没有转动时,定子锁住转子的力矩。它是步进电机最重要的参数之一,通常步进电机在低速时的力矩接近保持转矩。由于步进电机的输出力矩随速度的增大而不断衰减,输出功率也随速度的增大而变化,所以保持转矩就成为了衡量步进电机最重要的参数之一。例如,标记为2N.m的步进电机,是指该步进电机的保持转矩为2N.m。以下是步进电机的一些主要特点:(1)、一般步进电机的精度为步距角的3-5%,且不累积。(2)、步进

12、电机外表允许的最高温度。步进电机温度过高首先会使电机的磁性材料退磁,从而导致力矩下降乃至于失步,因此电机外表允许的最高温度应取决于不同电机磁性材料的退磁点;一般来讲,磁性材料的退磁点都在130以上,有的甚至高达200以上,所以步进电机外表温度在8090完全正常。,20,(3)、步进电机的力矩会随转速的升高而下降。当步进电机转动时,电机各相绕组的电感将形成一个反向电动势;频率越高,反向电动势越大。在它的作用下,电机随频率(或速度)的增大而相电流减小,从而导致力矩下降。(4)、步进电机低速时可以正常运转,但若高于一定速度就无法启动,并伴有啸叫声。步进电机有一个技术参数为空载启动频率,即步进电机在空

13、载情况下能够正常启动的脉冲频率,如果脉冲频率高于该值,电机不能正常启动,可能发生丢步或堵转。在有负载的情况下,启动频率应更低。如果要使电机达到高速转动,脉冲频率应该有加速过程,即启动频率较低,然后按一定加速度升到所希望的高频(电机转速从低速升到高速)。读者若要对步进电机的结构和工作原理做进一步了解,请参阅参考文献【44】和【45】中的相关章节。步进电动机以其显著的特点,在数字化制造时代发挥着重大的用途,伴随着不同的数字化技术的发展以及步进电机本身技术的提高,步进电机将会在更多的领域内得到应用。,21,19.6.2 TA8435H步进电机驱动芯片,TA8435H是东芝(TOSHIBA)公司生产的

14、双极性单片正弦细分二相步进电机驱动专用芯片,采用HZIP25封装形式,如图19-6所示给出了TA8435H的实物图。TA8435H可以驱动二相步进电机,且电路简单、工作可靠。该芯片还具有以下特点【46】:,图19-6 TA8435H步进电机驱动芯片实物图,22,(1)、工作电压范围宽,达到1040V。(2)、输出电流可达1.5A(平均)和2.5A(峰值)。(3)、具有整步、半步、1/4 细分和1/8细分运行方式可供选择。(4)、采用脉宽调制式斩波驱动方式。(5)、具有正/反转控制功能。(6)、带有复位和使能引脚。(7)、可选择使用单时钟输入或双时钟输入。图19-7是TA8435H步进电机驱动芯

15、片内部功能及引脚图,各引脚功能被列在表19-1中。从图19-7中可以看出,TA8435H主要由1个解码器、2个桥式驱动电路、2个输出电流控制电路、1个最大电流限制电路、1个斩波器和2个电压比较器等功能模块组成。,23,图19-7 TA8435H步进电机驱动芯片内部功能及引脚图,24,25,表19-1 TA8435H步进电机驱动芯片各引脚功能,26,19.6.3 TA8435H对两相步进电机的细分控制,图19-8 TA8435H对两相步进电机的细分控制系统功能图,27,步进电机有两种工作方式,即整步方式和半步方式。以步距角1.8的两相混合式步进电机为例,若采用双极性驱动方式【44】,则可以将步进

16、电机的两相视作四相进行控制。双极性驱动方式是指对绕组进行正向和反向通电,两相混合式步进电机必须采用双极性驱动方式。图19-8是TA8435H对两相步进电机细分控制的系统功能图,A和nA是电机的一相,B和nB是电机的另一相,由TA8435H的相应输出给出控制脉冲信号。在整步方式下【47】,步进电机每接收一个脉冲,转子旋转1.8,旋转一周,则需要200个脉冲。在半步方式下,步进电机每接收一个脉冲,旋转0.9,旋转一周,则需要400个脉冲。控制步进电机的旋转必须按一定的时序对步进电机引入线输入给定脉冲。以上述两相四线制步进电机为例,其半步工作方式和整步工作方式的控制时序如图19-9所示。,28,图1

17、9-9 步进电机整步方式和半步方式时序图,29,步进电机各相绕组的电流是按照给定工作方式的节拍轮流通电的,绕组的通电是按照通电断电再通电再断电的顺序循环进行,如果将这一过程复杂化,即每次通电时电流的幅值并不是一次升到位,而是分级、逐级上升。同样,每次断电时电流也不是一次降到0,而是逐级下降。由于电磁力的大小与绕组通电电流的大小有关,当通电相的电流并不马上升到位,而断电相的电流并不立即降为0时,它们所产生的磁场合力会使转子有一个新的平衡位置,这个新的平衡位置限定在原来步距角的范围内,此时绕组中电流的波形不再是一个近似方波,而是一个被分成N个阶段的近似阶梯波,则电流每升或降一个阶梯时,转子转动一小

18、步,当转子按照这样的规律转过N小步时,实际上相当于它转过一个步距角,这种将一个步距角细分成若干小步的驱动方法称为细分驱动。,30,图19-10 TA8435H的细分控制原理图,31,结合图19-7,下面对TA8435H的细分控制原理来进行分析。在图19-7中,第一个CLK(CLK1或CLK2)时钟周期内,解码器打开桥式驱动电路,电流从Vma流经电机的线圈后经Rnfa后与地构成回路,由于线圈电感的作用,电流是逐渐增大的,所以Rnfa上的电压也随之上升。当Rnfa上的电压Vnfa大于比较器正端的电压时,比较器使桥式驱动电路关闭,电机线圈上的电流IA开始衰减,Rnfa上的电压也相应减小;当电压值小于

19、比较器正向电压时,桥式驱动电路又重新导通,如此循环,电流不断的上升和下降形成锯齿波,其波形如图19-10中IA波形的第1段。TA8435H正常工作时,其内部另斩波器的频率很高,一般在几十kHz,其频率大小与所选用电容有关。在OSC作用下,电流锯齿波纹非常小,可以近似认为输出电流是直流。,32,在第2个时钟周期开始时,输出给步进电机线圈电流的控制电压UA达到第2阶段,比较器正向电压也相应为第2阶段的电压,因此,流经步进电机线圈的电流从第l阶段也升至第2阶段。电流波形如图19-10中IA的第2部分。TA8435H的工作原理在第3、4时钟周期与第1、2是一样的,只是又升高比较器正向电压而已,输出电流

20、波形如图19-10中IA的第3、4部分。如此最终形成阶梯电流,加在线圈B上的电流,如图19-10中IB。在CLK的一个时钟周期内,流经线圈A和线圈B的电流共同作用下,步进电机运转一个细分步。,33,由以上介绍可知,细分工作方式的优点是显而易见的,即使用细分方式可以提高步进电机的控制精度,降低步进电机的振动和噪声。因此,步进电机在低频工作时,可以选用1/4细分或1/8细分模式,以降低系统的振动和噪声。当系统需要在高速工作时,细分模式有可能达不到要求的运行速度,这时可以选用整步或半步方式。在速度较高时,步进电机运行在整步或半步工作模式下,可以达到稳定、振动和噪声都小的要求。实践证明【48】,步进电

21、机细分驱动技术可以减小步进电机的步距角,提高电机运行的平稳性,增加控制的灵活性等。,34,19.6.4 开发板上两相步进电机转速调节的实现,图19-8是PMY单片机开发板上TA8435H对两相混合式步进电机的细分控制的系统功能图,为了充分利用板上资源,这里可以用并口扩展芯片82C55的PB口来实现对TA8435H的控制。82C55芯片PB口的PB0和PB1分别与TA8435H的时钟输入CLKl和CLK2相连,这两个时钟的最大频率不能超过5kHz。控制时钟的频率,即可控制电机转动速率。本项目中的19.5节C语言源程序中利用了定时器T0实现对时钟CLK2的频率控制,由于主程序在初始化时将CLKl置

22、为高电平,因此项目中采用的是单时钟方式,T0的设置代码如下:,35,void Timer0_init()/定时器T0初始化 TMOD=0 x01;/定时器T0工作在方式1 TH0=(65536-Tset)/256;/定时器T0计数值高位 TL0=(65536-Tset)%256;/定时器T0计数值低位 程序中的符号常量Tset是定时器T0的时间设置常数,Tset取值越大,控制时钟CLK2的频率越小。可以通过修改整个程序开头的预定义部分:#define Tset 3000 设置Tset的值。同时,由于定时器T0工作在方式1,所以在定时器T0中断服务程序中,定时器计数器TH0和TL0的值也会随着T

23、set值的改变而被修改,相关程序如下:,36,void t0(void)interrupt 1 using 0/定时器T0中断服务程序,产生CLK2时钟脉冲 ET0=0;/关定时器T0中断,防止其它T0中断打断中断处理过程 TH0=(65536-Tset)/256;/工作方式1要求定时器T0计数值高位被再次赋值 TL0=(65536-Tset)%256;/工作方式1要求定时器T0计数值低位被再次赋值,37,由于Tset是常数,在源程序中修改Tset值后,程序必须被重新编译一次。如果将Tset设置成变量,通过设置键值改变它的大小,则定时器T0并不会象意料中的改变TH0和TL0的值,这说明定时器计

24、数器TH0和TL0中的设置值必须为常量。另一种调节步进电机转速的方法就是采用延时程序产生时钟CLK2,这时CLK2的频率可以在程序中被连续设置,其缺点是延时程序会占用大量的主程序资源,影响系统对其他事件的响应。,38,19.6.5 开发板上两相步进电机启动控制,除了通过TA8435H对两相步进电机进行调速控制之外,还可以通过它完成对两相步进电机的启动、正反转和细分控制。定时器T0产生的CLK2时钟是TA8435H的时钟输入,若无CLK1或CLK2时钟信号产生,则TA8435H不会驱动两相步进电机的运行,因此可以通过启动和关闭单片机定时器T0的方式来控制步进电机的开合。在主程序初始化时,为了满足

25、开机后步进电机处于关机状态,应在定时器T0初始化完毕后即刻关闭:TR0=0;/关定时器T0,无CLK2时钟输出,39,只有通过相应的按键,才能使得步进电机启动或停止运行:case 1:TR0=1;/开定时器T0,启动CLK2时钟输出,运行步进电机;PA8255=0 x00;/打开8个LED灯,表示步进电机运行 break;case 4:TR0=0;/TR0=0,步进电机关机;PA8255=0 xff;/8个LED灯全灭,表示步进电机停转 break;因此开发板上的S4键具有将定时器T0关闭的功能;S1键则可以打开定时器T0。8个LED灯可以作为步进电机运行的状态指示,步进电机停转时所有灯都灭;

26、运行时则全部点亮。,40,19.6.6 开发板上两相步进电机正反转控制,在图19-8中,与82C55并口扩展芯片PB2脚相连的是TA8435H的CW/CCW引脚,由表19-1可知,该引脚控制步进电机的正、反转。高电平为CW,控制电机正转;低电平为CCW,表示电机反转。前文已经介绍过,STC单片机对自己的端口进行读写时,既可以单独对某个引脚给出控制信号,也可通过总线读写方式进行控制。由于本项目是通过82C55对TA8435H进行输出控制的,不能选择端口控制方式,必须通过总线控制方式实现对步进电机的正、反转控制,以下是步进电机正反转控制的具体实现:,41,case 5:PB8255|=0 x04;

27、/设置PB2:CW/CWW=1,电机正转;break;case 8:PB8255 项目开发板上的S5键完成电机正转的控制,如何通过设置PB2脚为高电平而不影响PB口的其它控制信号的状态呢?程序是通过用PB82C55端口与0 x04按位相或实现的,如图19-11所示,这种方法既能够将PB2脚设置为高电平也会保持PB端口的其它控制信号状态。同理,用数字0 xfb与PB82C55端口按位相与,实现将PB2脚设置为低电平同时保持PB端口的其它控制信号状态不变,开发板上的S8键完成这一功能选择。,42,图19-11 程序对82C55的PB2脚高低电平设置原理图,43,19.6.7 开发板上两相步进电机的

28、细分控制,最后,看一下程序是如何实现两相步进电机的细分控制。还是在图19-8中,82C55的PB5与TA8435H的REFIN相连,REFIN为高电平时,Nfa和Nfb的输出电压为0.8V,REFIN为低电平时,Nfa和Nfb输出电压为0.5V(见表19-1),这2个引脚控制步进电机的输入电流。以Nfa端为例,电流Infa的大小与Nfa端外接电阻Rnfa的关系式为:Infa=Vnfa/Rnfa。主程序中,设REFIN=l:PB8255=0 x07;/PB5:EFIN=0;PB4:M2=0;PB3:M1=0;PB2:CW/CWW=1;PB1:CLK2=1;PB0:CLK1=1若选定步进电机额定电

29、流为0.4 A,Rl、R2则必须选用1.6、2W的大功率电阻。,44,与82C55并口扩展芯片PB3和P4脚相连的是TA8435H的M1和M2引脚,由表19-1可知,M1和M2决定电机的转动方式,即M1=0、M2=0,电机按整步方式运转;Ml=1、M2=0,电机按半步方式运转;M1=0、M2=1,电机按1/4细分方式运转;Ml=1、M2=1,电机按l/8步细分方式运转。引入程序:case 9:PB8255,45,case 11:PB8255 程序中的这4条case语句,实现了S9、S10、S11和S12键分别对步进电机整步、半步、1/4细分和1/8细分方式运行的选择,对M1和M2引脚高低电平的设置原理请读者参阅图19-11所示的示例或节的相关内容。,46,19.7 项目扩展任务,理解本项目中关于单片机对步进电机控制的19.6节解释说明,以组或个人为单位,参照本章例子程序设计以下程序。仿照本项目例程,利用现有板上资源,通过采用延时程序产生时钟CLK2,实现时钟CLK2的频率可以在程序中被连续设置,以达到连续调节步进电机转速的目的。,47,THE END,

展开阅读全文
相关资源
猜你喜欢
相关搜索
资源标签

当前位置:首页 > 生活休闲 > 在线阅读


备案号:宁ICP备20000045号-2

经营许可证:宁B2-20210002

宁公网安备 64010402000987号