步进电机驱动电路范文
时间:2023-03-17 04:55:14
导语:如何才能写好一篇步进电机驱动电路,这就需要搜集整理更多的资料和文献,欢迎阅读由公务员之家整理的十篇范文,供你借鉴。
篇1
专用步进电机集成驱动模块DRV8811由需求分析可知,设计两相步进电机驱动电路,采用恒流驱动方式,相驱动电流0.4~3A,且可调节。目前常用的专用集成步进电机驱动芯片TA8435由于其峰值电流只能达到2.5A,故不能满足相应的设计需求。在本文中,采用了德州仪器(TI)的高性能专用集成步进电机驱动芯片DRV8811设计步进电机的驱动电路。该芯片可以十分方便的为扫描器、打印机及其他一些自动化设备的运动执行单元—步进电机提供集成驱动方案,并且设计电路及其简单易行。
DRV8811步进电机专用集成驱动芯片,内部集成了两路H桥驱动电路,适用于两相步进电机的驱动,支持8V~38V输入电压,最宽温度范围为-60°~150°,输出电流峰值可达6A,完全满足设计的需求。DRV8811步进电路驱动电路设计在详细设计驱动电路之前,需要首先了解DRV8811的内部结构图,在此基础上才能完善设计。
电流检测—恒流斩波参数选择设计DRV8811的内部恒流斩波PWM模块中,采样电阻的输入经过了一个8倍的放大器。故参与比较的电压为采样电压的8倍。设步进电机定子绕组上的电流为CHOPI,ISENA和ISENB引脚外接的电阻阻值均为ISENR。第8引脚VREF外接电压为REFV,则当斩波电路实现恒流输出时,应用如下关系式。RCA和RCB两个引脚外接的电阻和电容决定了恒流斩波电路的PWM的脉冲周期,设该引脚外接的并联的电阻值为R,电容值为C,则PWM恒流斩波的周期为因此可以通过合理设置电阻R,电容C的值来设置PWM恒流斩波的周期。细分电路设计DRV8811集成步进电机驱动芯片可以十分方便的用来配置步进电机的细分方式。与细分方式相关的引脚为USM0,USM1——12,13。本设计中采用拨码开关硬件配置细分方式。
方向控制设计DRV8811有一个步进电机运行方向控制引脚DIR—3,该引脚电平状态不一样时对应的步进电机的旋转方向相反。根据需求分析可知,在设计时步进电机的运行方向可调,故本设计使用了一个切换开关来对步进电机的旋转方向进行切换。初始默认状态为顺时针旋转。同时增加了方向指示灯。步进电机启停切换及状态显示电路设计DRV8811有一个步进电机启停控制引脚RESETn—17,该引脚为低电平时,复位DRV8811,步进电机停止旋转;该引脚为高电平时,启动DRV8811,步进电机开始旋转。在电机运行时,用LED状态灯显示其运行状态。
脉冲信号输入电路DRV8811有一个步进电机电脉冲输入引脚Step—19,该引脚接控制器的脉冲输出。本设计中,需要调节主控制器的输出脉冲频率从100Hz~1000Hz可调,因此设计了4个输入按钮,分别用于输入脉冲频率的个位、十位、百位和千位。控制器的检测信号为s1—s4,按钮没有动作时,输入信号通过上来电阻被拉到高电平,当按钮有动作时,检测到输入变为低电平,从而对应相应的动作。每次按钮动作,对应的位加1,程序设计最高显示至1000。DRV8811主电路设计步进电机驱动器芯片DRV8811的电路设计中RCA和RCB的外接并联电阻和电容值的乘积为恒流斩波电路的PWM输出脉冲频率。可调电阻R即用来设定步进电机定子绕组上的电流,从而达到了设计需求中的电流可调的要求,另一个作用是作为电流检测电路的采样电阻,用来实现步进电机定子绕组的恒流。驱动总电路设计结合以上分析,控制采用AT89S52。
二、总结与展望
总结本文所做的主要研究工作和取得的成果总结如下:(1)在阐述了步进电机的概况基础上,结合课题的需求,提出了开发某型扫描器的步进电机的驱动电路的项目设计目标;(2)根据需求分析,完成了采用专用集成步进电机驱动芯片来完成步进电机驱动电路的设计,采用专用集成步进电机驱动芯片设计步进电机驱动电路更简单易行。
三、展望
篇2
关键词:步进电机;驱动控制;多芯片模块;工作模式
中图分类号:TP23 文献标识码:A
文章编号:1004-373X(2009)21-154-02
Design of Stepper Motor Driver Based on SMA7029M
ZHU Xiaokun
(No.795 Factory,Xianyang,712099,China)
Abstract:It is more and more important of the stepper motor system in the modern mechatronics products,such as CNC,packaging machinery,computer peripherals and so on.A design of the stepper motor driver with the simply controlling and inexpensive cost is proposed based on the multi-chip modules SMA7029M.The practice application shows its universalness,simplicity and reliableness,and the design in this paper can be widely used in the small-scale electromechanical integration equipments.
Keywords:stepper motor;driving control;multi-chip modules;work mode
步进电机是一种能将数字输入脉冲转换成旋转或直线增量运动的电磁执行设备,是现代机电一体化产品中的关键部件之一。它通常被用作定位控制和定速控制,以其惯量低、定位精度高、无累积误差、控制简单等特点广泛应用于数控机床、包装机械、计算机设备、复印机、传真机等机电一体化产品。相应的步进电机驱动器也得到了快速的发展和改进\。但是目前在工业应用中,多数驱动器体积较大,通用性不强,往往要求外接多路电源,而且成本较高。文中介绍了采用Allegro公司的SMA7029M多芯片模块设计步进电机的驱动电路,为步进电机提供稳定的输出电流,并通过试验和实际使用验证了其通用性强、控制简单、可靠性高的特性。
1 步进电机特点及驱动
步进电机受脉冲电流控制,每输入一个脉冲电机转轴步进一个步距角增量。转子的角位移正比于输入脉冲的数量,转子的角速度正比于输入脉冲的频率,转子的旋转方向取决于定子绕组的通电顺序。在使用过程中步进电机有一定的步距误差,但没有累计误差。若维持控制绕组的电流不变,则步进电机就可停在某一位置不动。其按力矩产生的原理可分为反应式步进电机和激磁式步进电机。按输出力矩大小可分为伺服式步进电机和功率式步进电机。
由于步进电机是属于感性器件,感抗与其输入频率是成正比。假设步进电机的转速增加,其感抗也会增大。该状态下流入电机线圈的电流就会减小,电机的输出扭力达不到要求输出,严重的情况下会造成电机失步或者电机只振动不转。这就要求其驱动电路能够提供稳定的输出电流,使步进电机具有稳定的转动。一般设计中步进电机驱动都用采用三极管或者是用ULN2803IC等来驱动,这些驱动在实验板或一些转速不高、带动负载小的应用场所使用比较合适,在实际工作设计中远远达不到所需要求。针对这些问题,各大公司陆续推出了专用的步进电机驱动芯片,简化其驱动设计。Allegro公司的SMA7029M多芯片模块就是一款性能使用简单控制优良的步进电机控制模块,该多芯片模块能为步进电机提供稳定的输出电流,使电机能够稳定的转动。
2 步进电机驱动设计
SMA7029M是专为高效率、高性能的两相单极步进电机设计的多芯片模块,它采用功率FET技术和单片逻辑控制电路对完成步进电机的运动控制。同一系列的还有SLA7024M和SLA7026M,三个芯片模块不同主要是在输出额定电流(1.5 A或3.0 A)和包装样式上。
2.1 SMA7029M结构及驱动设计
SMA7029M内部主要包含电流峰值检测部分,PWM关闭时间控制部分,电机逻辑控制部分,输出电流及回流电流控制部分,如图1所示。其工作过程主要是通过电流采样,通过峰值检测电路得到当前最大电流,根据其结果控制PWM工作时间,最终达到控制整个芯片组输出电流的目的。
图1 SMA7029M的内部结构及电路
图1也给出基于SMA7029M芯片组电机驱动设计的电路,主要包含参考电压取样电路,OC门反向器输入电路,电流取样以及输出变压器耦合电路。通过设置电路中的R3=47 kΩ,C1=470 pF,可以得到脉宽约等于12 μs。
2.2 逻辑控制关系
SMA7029M可以通过外部逻辑控制实现电机状态的改变,表1给出了详细的控制方式及输出结果。
表1 SMA7029M半步进操作状态
Sequence状 态
012345670
Input AHHLLLLLHH
Input A or tdaLLLHHHLLL
Input BLHHHLLLLL
Input B or tdbLLLLLHHHL
Output(s) ONAABBABAABBABA
其中tda和tdb连接外部OC门反相器的逻辑控制信号,连接关系见图1所示。从表1中可以看出,不同控制关系下输出的不同状态转移,A和B两个通道可以独立控制,例如在状态0及状态2下A,B通道分别独立工作,而在状态1下二者可以同时工作。
2.3 工作模式选择
通过改变图1中外部元器件取值来设置PWM电流启动点。Vb是供电电压,典型取值为5 V;R1,R2为分压电阻,为所需参考电压提供合适的输入;Rs是电流取样电阻。其中参考电压Vref输入最大不能超过2 V,相应地选择合适的电阻。在正常PWM模式(满电流工作)下,Iout需要设置到电机工作所需的满电流,它由式(1)决定:
Iout=R2R1+R2•VbRs
(1)
为了使输出电流可调,可以将图1中的固定电阻R2改用可调电位器。在保持电流模式下,图2增加电路可以减小步进电机的电压。
其中外部三极管可以改变分压比,使参考电压Vref发生变化,从而减小输出电流。此时的Ihold由电阻R1,R2,Rx,Rs以及电压Vb共同决定:
Ihold=R2RxR1R2+R1Rx+R2Rx•VbRs
(2)
图2 保持电流模式下参考电压电路
3 结 语
步进电机驱动作为现代机电一体化产品中的关键部件之一,在当今社会中发挥的作用越来越重要,从数控机床、包装机械到电脑的装置、机器人系统、仪表仪器等各种信息工业产品中,都离不开步进电机,进而也对其驱动电路设计提出了进一步的要求。本文以Allegro公司的SMA7029M多芯片模块为核心,实现了一种控制简单、成本低廉的两相单极性步进电机驱动器,通过设计合适参数控制步进电机输入电流。通过在包装机控制系统中的实际使用,进一步证明了该步进电机驱动器工作可靠,效率高,矩频特性好,可以广泛应用于小型机电一体化设备中。
参考文献
[1]郭威娜,邓红.双步进电机同轴联接及驱动装置的设计\.微计算机信息,2005,21(4):103-104.
[2]王玉琳.三相反应式步进电机的一种实用驱动电路\.电力电子技术,2005,39(3):71-73.
[3]杨建宁.用PMM8713与SI-7300A组成的步进电机功率驱动电路\.中小型电机,2004,31(5):43-49.
[4]周忠辉.步进电机驱动的实现方法\.仪表技术与传感器,2004(11):61-63.
篇3
【关键词】步进电机;细分驱动;单片机;电流控制
1.步进电机工作原理及分类
步进电机是一种特殊的直流同步电机,它由电脉冲信号进行控制。脉冲的个数决定了步进电机的转角,而脉冲的频率则决定了步进电机的转速,且二者均为正比关系。
步进电机的分类方法很多,下面仅介绍按照励磁方式的分类。
(1)永磁式步进电机。该类型的步进电机内部有转子和定子,其中的转子由永磁体制造而成。通过对其定子绕组的通电形成电磁场,从而带动转子运动。这一类的步进电机多为两相,步距角多为7.5°或15°,常见于医疗设备等场合。
(2)反应式步进电机。该类步进电机由磁性转子通过与定子形成的磁场相互作用形成运动。其转子上均匀分布很多小齿,定子有三个励磁绕组,其运动原理为“错齿”。由于小齿加工困难,所以单段反应式步进电机的相数不能很大,多见有三相、四相、五相。相数更多时电机的制作成本过高,因此相应产品很少见。另外一种就是多段反应式步进电机,其特点就是将定子分布在一根长轴上。此类步进电机的缺点是电机的长度、重量很大,因此成本也很高。
(3)混合式步进电机。混合式步进电机综合了永磁式步进电机和反应式步进电机的优点,可以提供更好的机械性能。其定子铁心结构与反应式步进电机相同,可以分为几个大齿,每个大齿上铣有若干小齿。而控制绕组则与永磁式步进电机相同。比如两相步进电机的步距角可以达到1.8°。而随着电机相数的增加,其步距角可以达到更小,提高了电机的工作精度,因此该类步进电机使用范围更加的广泛。
2.常见步进电机驱动系统及驱动技术
步进电机的驱动系统可以大致归类为硬件实现与软件实现两种。
硬件实现类由脉冲信号控制器、硬环分电路、驱动电路三部分组成。其中脉冲信号控制器作用是产生脉冲信号,硬环分实现脉冲的分配,驱动电路是将硬环分电路的输出信号隔离放大,以驱动步进电机的运行。此类系统可以作为开环使用,其设计简单,成本较低,运动平稳,可以实现初步的细分驱动。缺点在于一套系统仅能驱动一个电机,系统的灵活性、可移植性均很差。
软件实现类是目前常用的方式。在这类系统中,控制信号的产生和分配由单片机或者PLC实现并输出,然后通过隔离电路、信号放大电路完成对电机的驱动。这类系统的灵活性很高,可以快速适用于不同的控制系统。同时由于单片机和PLC可编程,因此可以实现一些复杂的控制算法。同时随着集成电路等技术发发展,单片机的性能越来越好,其内部集成了PWM模块、A/D模块等,可以更加方便地实现步进电机驱动系统的设计与实现。
常见的步进电机的驱动技术主要有单电压驱动、单电压串电阻驱动、高低压驱动、恒流斩波驱动、升频升压驱动和细分驱动等。
其中高低压驱动是指在脉冲前沿加高压,从而提高脉冲的前沿陡度,脉冲后沿使用低压维持电机绕组中的电流的步进电机驱动方式。这样的方法实际上是加大了系统传递到绕组中的电流从而提升了电机的整体机械特性。但是在高压结束和低压开始的时刻会产生电流的短暂降低,导致局部机械特性的损失。这种方式在实际中仍有应用。
所谓恒流斩波驱动,就是利用斩波电路将绕组的电流限制在期望电流附近,从而实现“恒流驱动”。且由于电流在额定电流附近波动,电机的机械特性较好。但是斩波电路的电流纹波大,噪声也比较大。
细分驱动是指在切换脉冲时不是瞬间将绕组的电流切断或通入,而是以阶梯状的电流波形实现驱动电流的同时或切断。比如将一电机进行n细分驱动,则电流增大或减小n次才能实现完全的切断或通入。这样可是使定子磁场在旋转过程中出现多个稳定的状态,从而将步距角细分n份,提高了步进电机的分辨率,使得电机能够更加平稳地运行。
两相四线步进电机的常规驱动方式有两相四拍和两相八拍两种,分别为A-B-A'-B'-A和A-AB-B-A'B-A'-A'B'-B'-AB'-A。其中两相八拍的运行模式是2细分驱动,因此两相八拍的运行模式更加地平稳,且精度高。细分运行状态下,A-A'相中与B-B'相中的电流的数值和始终为Im,只是每相中的电流从0变化到Im(反向变化相同)不再是一次阶跃变化,而是细分成四个小的阶跃变化。而稳定的磁场状态由原来的4个变为现在的16个,也就是增加了12个中间的稳定状态,因此电机的运行更加平稳,而步距角相应的变为原来的1/4,电机的分辨率更高,也就是精度更高。
步进电机的电磁转矩计算公式为:Te=pImM(iAcosθ-iBsinθ)
式中,Te为电磁转矩,p为电机转子的齿数,M为定子线圈的互感。
若将电流改为正弦形式,
iA=I cosα iB=I sinα
其中角度α为电机轴预置位置的电角度。
则电磁转矩可改写为
Te=pImMIsin(α-θ)
但是必须注意的一点是,电磁转矩实在对电机的数学模型进行了简化后计算得到。在一般场合下,电磁转矩可以认为是步进电机的输出转矩。但是在一些高精度场合还要考虑到摩擦、电枢自身转动惯量对电机输出力矩的影响。如果步进电机作为直驱电机使用时,还要考虑电机与被驱动对象间连接件的刚度、转动惯量等影响。
由于电机出厂后,它的电气特性和机械特性已经确定。在不改变电机的结构的前提下,通过细分驱动仍能将电机的性能大大提升。控制电流的基本思路是进行电流的闭环控制,而电流则有一输出电流可控的逆变电源获得。当实际值小于理想值时,增大开关管的导通时间,电流变大;实际值大于理想值时,减小开关管的导通时间,电流变小。
3.单片机驱动系统的设计与实现
硬件电路采用模块化设计,分为电源、主控电路、电流检测、隔离电路、电机驱动电路。
系统使用STC12C5A60S2做为主控芯片,这是一款国产芯片,指令周期1T,内置PWM、AD模块,最高可工作在24MHz的频率下,有DIP40封装和PQFP44封装,以适应不同的尺寸需求。这款芯片完全能够满足本系统的应用需求。
隔离电路使用PLT521光耦设计完成。使用光耦是为了避免电机运行期间对主控板造成干扰。PLT521是一款常用的光耦芯片,由于步进电机工作的频率不高,因此该芯片的速度完全能够满足。
电机驱动模块使用L298设计完成,L298内置双H桥,能够结构TTL信号作为逻辑信号。其输出端最高电压可达42V,电流最大2.5A,开关频率可达40KHz。由于实验中所使用的步进电机功率较小,因此L298可以满足需要。如果需要驱动较大功率的或相数更多的步进电机,可采用分立开关元件自行搭建H桥驱动电路。
开机运行后,程序即循环检测按键输入的指令。当检测到键盘输入的命令与当前单片机内保存的命令不同时,即更新保存的命令并重新计算控制参数;若没有检测到输入或输入与前次相同,则控制参数不变,进入电流检测环节,然后根据检测到的电流生成相应的PWM波形。
另外电机都有固定的额定工作电流和最大超载电流,当检测到的电流超过最大超载电流后,应立即关断电机,从而保护电机及其驱动的对象。这个功能可以由硬件电路实现,但是考虑到系统的通用性,因此将该功能改成由软件实现。
【参考文献】
[1]郭天祥.新概念51单片机C语言教程.2009,1.
篇4
关键词:PLC 组态 HMI 步进电机
中图分类号: TM383.6 文献标识码:A 文章编号:1007-9416(2015)11-0000-00
一种基于PLC和组态的步进电机调速系统,其控制方案由硬件与软件相结合的形式实现。其控制方式变得直观且容易操作,可以实现对步进电机的调速功能。
1 步进电机驱动电路设计
1.1 步进电机原理及其控制
步进电机因为其工作的方式与特点,又被称之为脉冲电机,是被广泛应用于数字控制系统中的电机。步进电机的作用是将接收到的脉冲转化为具体的角度偏移或线性移动。控制步进电机的方法,一般是通过控制输送到其驱动器的脉冲个数,从而实现控制角位移;通过控制输入驱动器的脉冲的周期来达到改变步进电机的转速,实现调速。被广泛应用于各种开环控制系统中。
1.2 步进电机的控制方式
步进电机的常用控制方式主要有3种,分别为基于电子电路的控制系统,基于单片机的控制系统以及基于PLC的控制系统。基于电子电路的步进电机控制系统,电路简单;基于单片机的步进电机控制系统是实现硬件与软件相结合的控制方法,通过编写程序的方式实现脉冲分配,电路设计简单,但却有着工作不稳定的缺陷。基于PLC步进电机控制系统,由PLC、环形脉冲分配器和功率放大电路构成。对PLC进行软件编程使其输出所需数目的电脉冲信号,通过改变步进电机的转动角度,来实现控制伺服机构的移动量。同时使用PLC程序编辑控制输出电脉冲信号的频率来实现调速,从而实现改变伺服机构的移速。
1.3 THB6064AH芯片
THB6064AH芯片为日本东芝半导体公司推出的两相混合式步进电机驱动芯片,拥有高细分、衰减方式连续可调、大功率、温度与电流过保护功能。步进电机的驱动电路功能主要有两个,分别为脉冲分配与功率放大。上位机输入的脉冲信号,经过环形脉冲分配器进行脉冲分配,经过功率放大电路对脉冲信号驱动能力进行放大,从而实现控制步进电机。
2硬件电路设计
通过脚3脚4的输入电压实现对衰减方式的控制,从而可以达到更好的驱动效果;脚5为电流输出设定端以及参考电压设置端,输入的电压以及电流大小进入恒流斩波电路的比较器中,实现对输出电流大小的控制;脚7、8、9为细分数选择端,通过输入不同的数值可以选择细分模式,实现对步进电机的细分控制,使步进电机运行更加平稳;脚18为使能端Enable,当使能端输入为0时无脉冲输出,输入为1时正常工作,由此实现对电机启停控制。
通过调节Vref端口的变阻器使调节输出电流的大小。OSC2端口控制电流的衰减管段时间,通过串联一个电阻来与内部电路形成RC振荡回路。参考电机工作时输入的脉冲频率,选择40KHz时衰减关断,所以对应接51KΩ的电阻串联。DY1、DY2位衰减方式控制端,通过控制输入DY1与DY2的电平来选择不同的衰减模式,以实现更好的驱动。经过测试后选择40%的快衰减模式可以使电机运行效果更为优秀,所以DY1输入高电平,DY2悬空。M1、M2、M3为细分数控制端,通过改变M1、M2、M3的输入电平来改变步进电机的细分数。细分越高,步进电机的运行更加平滑稳定,可以减小步进电机震荡。本次设计所采用的为32细分,所以M1、M3输入高电平,M2悬空。NFA、NFB分别为A、B绕组的检测电阻,选择0.22Ω/2W的大功率电阻串联。SGND、PGNDA、PGNDB接24V地线,VMA、VMB为电机驱动电源,与24V电源正极相连。VDD为芯片电源输入端,与5V电源正极相连。RESET为复位输入,通过PLC输出来使步进电机的转子在电机运行前复位,使其不会出现错步的现象;EN为使能端口,由PLC输出控制,实现电机的启停控制;CLK与CW端口分别为脉冲信号输入端口与方向信号输入口,PLC通过向这两个端口发送脉冲信号和方向信号,实现控制步进电机的调速与正反向控制。由于PLC输出为24V,THB6064AH芯片的工作电压为5V,所以PLC输出与芯片间需串联电阻,使电压合适THB6064AH的工作电压。
3 PLC程序设计
3.1 工艺对象组态
在PLC1200系列中,用户可通过添加工艺对象来控制电机,实现对给进机构的控制。通过定义工艺对象中的参数,即可实现对给进机构进行控制。在工艺对象中可以定义给进机构的导程,在运动控制模块中无需通过计算所需发出的脉冲数量与频率自动进行计算后再进行输出,所以使用起来十分方便,只需要直接输入给定的位置以及速度便可自动完成动作。
3.2 运动控制模块
PTO模块是集成在运动控制模块中。当用户需要使用高速脉冲输出时,通过组态工艺对象、调用运动控制模块即可实现高速脉冲输出功能,从而实现控制机械给进。通过控制MC_Power的使能状态即可控制运动控制模块的使能,实现对步进电机的起停控制。Axis为控制轴,输入轴编号接对对应的轴进行控制。
4 结语
通过测试可以正常运行。重新接线后通电,通过HMI控制PLC输出脉冲,脉冲经过自制THB6064H电路后驱动电机,可实现调速功能,步进电机调速系统正常。?
参考文献
篇5
关键词: 数控机床; 步进电机; STM32F103; 控制模块
中图分类号: TN876.3?34; TH39 文献标识码: A 文章编号: 1004?373X(2017)08?0129?05
Design of stepper motor high?precision control module in numerical control machine tool
HOU Xiaofang, TAO Baofeng
(1. Shaanxi Institute of Technology, Xi’an 710300, China; 2. Northwest University of Political Science and Law, Xi’an 710063, China)
Abstract: The traditional stepper motor control module of the numerical control machine tool can't effectively coordinate the relationship among the speed parameters of the stepper motor, and has low control precision. Therefore, the stepper motor high?precision control module of the numerical control machine tool was designed. The STM32F103 in the module gives the control instruction of the stepper motor′s running process according to the synthetical linear speed control function. The FPGA generates the control signal according to the control instrument, and transmits it to the stepper motor driver. The stepper motor driver imports the control current into the stepper motor according to the sorting of control positions in the control signal. The accurate control of the controlled object is implemented with the module. The grating sensor acquires the running process of the stepper motor. The FPGA gives out the specific running result of the stepper motor by analysis of the collected information, and transmits it to STM32F103. The real?time monitoring and correction of the running process of the stepper motor are realized with STM32F103. The experimental results show that the designed module has good response effect, control error and control result, and can realize the high?precision control.
Keywords: numerical control machine tool; stepper motor; STM32F103; control module
0 引 言
步进电机是一种能够实现控制信号数模转换的控制设备,与其他控制设备相比,其拥有控制误差不累计、鲁棒性强等优点。在强调自动化办公的当今社会中,步进电机被广泛应用于数控、计量、器械等领域[1?3]。在数控领域中,步进电机以其稳定的控制水平成为数控机床中的核心控制设备。但在传统的数控机床步进电机控制模块无法有效协调步进电机速度参数间的关系,控制精度不高。现如今,数控领域对数控机床中步进电机高精度控制模块,产生了较大的需求[4?6]。
控制精度包括响应效果、控制误差和控制成果,传统的数控机床步进电机控制模块均无法完全实现高精度控制。如文献[7]基于电磁铁设计数控机床步进电机控制模块,其将电磁铁产生的电磁扭矩作为控制媒介,实现对被控对象的有效控制。但电磁铁易受干扰,将导致整个模块的鲁棒性被破坏,故其响应效果、控制误差和控制成果均不好。文献[8]基于单片机设计数控机床步进电机控制模块,该模块利用单片机较为强大的控制性能,结合部分外接电路,实现了对被控对象的有效控制。其响应效果和控制误差较好,但在多线程控制下单片机耗能较大,导致控制信号不稳定,故模块的控制成果不好。文献[9]设计基于电子电路的数控机床步进电机控制模块,电子电路产生的控制信号可直接被步进电机所使用,有效提高了模块的控制精度。但该模块更改控制策略的步骤非常复杂,故只适用于控制策略较为稳定的被控对象。文献[10]设计基于可编程逻辑控制器的数控机床步进电机控制模块,可编程逻辑控制器的本|就是工业计算机,其价格便宜、使用简单,具有较强的实用性。在控制工作中,可编程逻辑控制器用其输出的方形脉冲信息对步进电机的速度进行控制,具有较高的响应效果和控制成果,但该模块的控制误差不易控制。
根据上述内容可知,若想使数控机床步进电机控制模块实现高精度控制,需要选择性能高、成本低的控制器,并结合特定方法有效协调步进电机的速度关系。现基于STM32F103微控制器和综合线性速度控制函数,设计数控机床步进电机高精度控制模块。
1 数控机床中的步进电机高精度控制模块设计
1.1 模块整体方案设计
所设计的数控机床步进电机高精度控制模块采用STM32F103微控制器作为其硬件控制核心,并结合综合线性速度控制函数,提高模块响应效果和控制成果,缩减控制误差,最终实现高精度控制。图1为模块硬件结构图。
图1 模块硬件结构图
由图1可知,控制工作开始后,STM32F103微控制器将给出控制步进电机运行流程的控制指令,该指令的实施由现场可编程门阵列(Field?Programmable Gate Array,FPGA)实现。FPGA根据指令生成控制信号,对步进电机的初始化和速度进行控制。STM32F103微控制器也将对FPGA给出的步进电机运行状况信息进行接收和显示。
由于在实际应用中,数控机床中的步进电机往往不止一台,因而,所设计的数控机床步进电机高精度控制模块选用FPGA的一项重要因素就是:FPGA能够对多台数控机床实施同时控制,并可以对控制指令进行精准分配。这对提高模块响应效果、缩减模块控制误差具有决定性作用。
由于步进电机只有在驱动器存在的情况下才能正常运行,故FPGA与步进电机并非直接相连。FPGA先将控制信号传输给步进电机驱动器,步进电机驱动器根据控制信号中控制位置的排序,依次将步进电机所需的控制电流导入步进电机,以实现对被控对象的准确控制。在所设计的数控机床步进电机高精度控制模块中,光栅传感器的作用是Σ浇电机的运行流程进行采集。其将所采集到的信息传输给FPGA,FPGA对信息内容进行判断,得出步进电机的具体运行结果,并将其传输给STM32F103微控制器,实现STM32F103微控制器对步进电机运行流程的实时监控和修正。
1.2 STM32F103微控制器设计
STM32F103微控制器是一款对8位单片机进行优化后产生的32位控制器,其价格便宜、便于携带,并拥有很强的控制能力,在运算速度和转换效率上比8位单片机有很大提升。STM32F103微控制器拥有低耗、高兼容性和高通信能力等优点,其电压范围为[2.0 V,3.6 V],通常使用3.3 V电源供电。
STM32F103微控制器给用户提供了三个工作模块,分别是标准工作模块、节能工作模块和休眠工作模块,用户可根据自身控制需求选用最适合的工作模块。其还拥有多种类型的通信接口,最大传输频率为70 MHz,可进行多方信号的同时、快速传输。
在STM32F103微控制器中,其最重要的功能电路是晶振电路和电源电路,如图2、图3所示。
由图2可知,STM32F103微控制器最多可连接两个晶振电路,分别为其提供高速标准计时和低速精准计时,晶振Y的规格为10 MHz。电容C1和C2的主要功能是对晶振Y进行激励。
由图3可知,电源电路为STM32F103微控制器提供了三种供能模式,分别是外接蓄电池供能、数据传输接口供能以及计算机软件接口供能。电容C1和C4的规格为0.1 μF,C2,C3的规格是10 μF。考虑到电路中的电能损失,电源电路所提供的电能是5 V,故需要对电源电路的电压进行转换,所使用的转换器是LT1117稳压管。
1.3 FPGA设计
所设计的数控机床步进电机高精度控制模块选用的FPGA拥有210个引脚和148个输入/输出端口,其电源电压的输入范围为[1.2 V,3.5 V],可在温度为[0,90 ℃]的范围下运行。FPGA拥有两种工作模式,分别是内部测试和分频测试,其价格便宜、控制成果好,能够实现对步进电机的高精度控制。图4为STM32F103微控制器与FPGA的接口连接图。
由图4可知,FPGA拥有5个输入线接口和20个输出门接口,微控制器的虚拟内存用来进行控制指令地址的传输,线接口用来对控制指令进行重置、锁定、编译、写入和只读。门接口0~7可对8个步进电机进行同时控制。FPGA的内部测试和分频测试将相互结合使用,对STM32F103微控制器中控制指令进行信号转换,FPGA输出的控制信号格式为数字脉冲信号。
由于数控机床要求步进电机的运行流程必须包括初始化、加减速运转、稳定运转和休眠,故FPGA需要先对STM32F103微控制器中晶振电路的计时输出进行分频,再进行信号转换。经转换后获取的控制信号将传输给步进电机驱动器进行进一步操作。
1.4 步进电机驱动器设计
由于FPGA给出的控制信号能量不高,无法唤醒步进电机,故利用步进电机驱动器对FPGA的控制信号进行放大。步进电机驱动器根据控制信号中控制位置的排序,依次将控制电流导入步进电机,保证数控机床中步进电机的正常运行。图5为步进电机驱动器电路示意图。由图5可知,数控机床步进电机高精度控制模块所选用的步进电机驱动器型号是双相细分驱动器,这种型号的步进电机驱动器拥有精度高、噪音小、便于携带的优点。电路中的时钟接口选用的是光电耦合信号控制器,有效缩减了设计成本,并且操作更为简单。当12 V电源的输出是稳定电流时,步进电机将进行反相转动运行;无电流输出时,步进电机则进行正向转动运行。
步进电机驱动器对FPGA控制信号的放大工作是循环进行的,分区接口与方向控制信号器相接,作用是对控制信号中控制位置的排序进行依次读取与准确输送。接口1与接口2则与数控机床中的步进电机直接相连,最终实现数控机床步进电机高精度控制模块对被控对象的准确控制。
2 步进电机高精度控制模块软件设计
在传统的数控机床步进电机控制模块中,通常选用直线或抛物线对步进电机进行加减速控制。其中,直线速度控制函数的运算量小、效率高,所以模块对被控对象的响应效果较好,但控制误差和控制成果不高。而抛物线控制函数的运算量大,模块的控制误差较小,响应效果却不好。为此,所设计的数控机床步进电机高精度控制模块选用了综合线性速度控制函数,将直线和抛物线的优点结合起来,摒弃二者缺点,实现模块对被控对象的高精度控制。
当步进电机处于加速运行时,其加速函数分为三个阶段,依次为抛物线、直线、抛物线,则有:
式中:为直线加速度;为直线方程与坐标轴的交点位移;为抛物线斜率;为加速时间;为步进电机初始速度;和分别是第一次和第三次加速抛物线的参数。将步进电机加速抛物线的总参数设为,则:
此时,步进电机在直线、抛物线1和抛物线2的加速阶段速度,,满足如下关系式:
此时,三个加速阶段所能获取的控制指令数量为:
根据式(1)~式(5)可得,当STM32F103微控制器发出第个控制指令,该指令与三个加速阶段中加速时间的关系式为:
通过调节式(6)中的各项参数,能够有效协调步进电机的速度关系,对模块获取优良的响应效果、控制误差和控制成果,实现高精度控制具有一定的推动作用。
当步进电机处于减速运行时,其减速曲线和加速曲线是互为对称的,运算方式与加速函数相近。
3 实验分析
实验利用对比方式对本文模块、单片机控制模块和可编程逻辑控制器控制模块的响应效果、控制误差和控制成果进行分析,确定本文模块能否较好地实现对被控对象的高精度控制。在数控机床中,其主要被控对象为机器转速和位移,令三个模块在同等条件下对实验机器的转速和位移M行控制。
3.1 响应效果分析
将本文模块、单片机控制模块和可编程逻辑控制器控制模块对实验机器转速、位移的响应时间绘制成曲线,如图6、图7所示。响应时间越短、越稳定,则模块的响应效果越好。由图6、图7可知,各数控机床步进电机控制模块对机器转速的响应效果要好于对机器位移的响应效果,差值在3 s左右。本文模块的响应时间曲线要明显低于其他两个模块的响应时间曲线,且曲线的稳定性更强。由此可得出,本文模块具有优良的响应效果。
3.2 控制误差分析
各数控机床步进电机控制模块的控制误差是根据步进电机的数据转矩确定出来的,这是因为转矩的不确定性较大,能够对其进行准确控制的模块,模块的控制误差必然较小。
在实验给出的控制指令中,步进电机的输出转矩应为1.8 kg・cm。在步进电机频率不断增加的情况下,其输出转矩越贴近该数值,证明模块的控制误差越小。实验结果如图8所示。
由图8可知,在三个模块中,本文模块的步进电机输出曲线与控制指令中的1.8 kg・cm转矩标准最为接近。由此可得出,本文模块具有优良的控制误差。
3.3 控制成果分析
数控机床步进电机控制模块的控制成果是指,在模块控制下由实验机器产生的加工元件。加工元件的规格越接近控制指令的目标规格,则模块的控制成果越好。根据上述定义,绘制出控制成果曲线,如图9所示。
由图9可知,本文模块的控制成果范围高达[97.6%,99.8%],较其他两个模块而言,本文模块具有优良的控制成果。
4 结 论
本文设计数控机床步进电机高精度控制模块,其采用STM32F103微控制器作为硬件控制核心,并结合综合线性速度控制函数、现场可编程门阵列、步进电机驱动器和光栅传感器,以提高模块响应效果和控制成果、缩减控制误差为设计目标,最终实现模块的高精度控制。实验将本文模块与单片机控制模块,以及可编程逻辑控制器控制模块的响应效果、控制误差、控制成果进行对比。实验结果表明,所设计的模块具有优良的响应效果、控制误差和控制成果,可较好地实现模块对被控对象的高精度控制。
参考文献
[1] 王宽,赵巍,张翔宇.基于Mach3的教学型五轴数控机床控制系统设计[J].天津职业技术师范大学学报,2016,26(1):37?40.
[2] 徐正平,许永森.S3C2440A在步进电机控制器人机交互中的应用[J].液晶与显示,2015,30(1):70?76.
[3] 吴康,刘景林.多通道步进电机控制系统上位机设计[J].微电机,2015,48(5):66?69.
[4] 徐伟龙,顾金良,郭睿,等.基于PSD的步进电机控制系统[J].传感器与微系统,2015,34(7):76?78.
[5] 李爱竹,徐柳娟.基于EPM240T100和TB6560的步进电机控制系统[J].机电工程,2014,31(5):671?675.
[6] 潘齐欣,唐型基.基于步进电机控制的仿人机械手臂抓取移动系统设计[J].科技通报,2016,32(3):118?121.
[7] 李欣,刘景林,刘洋.多通道集成化步进电机控制器设计[J].微电机,2014,47(3):52?55.
[8] 白玉,刘冰,李智.基于Cortex?M3处理器的步进电机控制系统[J].电子科技,2014,27(10):43?45.
篇6
【关键词】步进电机;细分驱动;多模式;数据存储
1.引言
步进电机驱动器是步进电机控制系统的核心,步进电机能否更好的应用,很大程度上取决于步进电机驱动器的水平。伴随着步进电机的产生,步进电机驱动器就一直在不断发展和进步,目前国内外步进电机驱动器种类很多,但是大部分功能比较单一,很多是针对固定的步进电机或者固定的应用领域,而且价格一般较高,很多不带细分功能,很难满足现实生活中需要灵活应用且成本较低的场合。
本设计的目的就是解决现实生活中需要灵活应用和低成本的问题,并且是使用应用最广泛的混合式步进电机而制作的步进电机控制器,步进电机采用三洋公司的2-4相两用混和式步进电机。系统可以实现正反转控制,多模式选择,圈数、速度设定和存储,速度调节范围宽,低速自动细分,输出转矩大且可调,各种数据的液晶显示,过热和掉电保护等功能。
2.设计分析与方案的确定
2.1 设计方案
方案1:细分完全靠软件实现,驱动电路采用三极管和A/D转换芯片;脉冲用单片机的定时器产生;显示采用数码管;存储采用单片机内部的特殊存储单元。这种方法侧重于软件设计,当脉冲太快时,定时器中断就会和细分程序产生冲突,造成程序的混乱;存储的数据容易丢失;显示内容比较单一;控制的实时性不易保证,调试也比较烦琐,可靠性较低;而且效率较低,大部分能量消耗在三极管得发热上。
方案2:驱动电路采用东芝公司最新推出的步进电机驱动芯片TB6560AHQ,它内部集成双全桥MOSFET驱动;最高耐压40V,单相输出最大电流3.5A(峰值);具有整步、1/2、1/8、1/16细分方式;内置温度保护芯片,温度大于150℃时自动断开所有输出;具有过流保护;配合单片机可以实现自动细分、电流和力矩自动控制、过流和温度过高自动保护等功能。掉电存储电路采用Atmel公司的AT24C04(EEPROM);显示电路采用1602液晶显示模块;输入设备采用4*4矩阵键盘。
2.2 方案对比及确定
用分立元件做的驱动电路比较复杂,调试繁琐,如果设计的电路稍有瑕疵,就会造成故障率急剧上升,效率较低,很大一部分能量浪费在驱动电路上,而且很难实现细分和正弦波电流驱动。集成芯片驱动方式具有电路简单,调试容易,稳定性高,效率高,体积小,功能齐全等优点,能做到自动细分和正弦波电流驱动,但是功率一般不能做的很大。
当速度增大时单片机定时器中断较快,因此细分不能全部用软件实现,若使用三极管和A/D转换芯片时必须大量依靠软件实现细分;圈数和速度必须牢靠的存储起来,方便应用,因此必须使用专业的掉电存储芯片;使用中必须实时显示速度和圈数,因此应该选用能显示多个数据的1602液晶显示模块;使用中对稳定性和实用性有很高的要求,使用集成芯片电路简单、功能强大,可以把单片机大量的资源用在其他地方,不仅增加了系统的整体稳定性和实用性,而且还能增加许多其他功能,使系统的实用性更强。
所以综合以上情况考虑,选用方案2来设计步进电机智能控制器。总体设计框图如图1。
3.主要模块设计
3.1 驱动模块
3.1.1 TB6560AHQ简介
TB6560AHQ是东芝公司最新推出的步进电机驱动芯片,通过采用BICD工艺将低电阻与高许可损耗封装相结合,使其与其它同类产品相比能够极大减少热量的产生,还能支持使用时钟输入控制的无微控制器应用环境下的微步驱动。自动产生纯正的正弦波控制电流,与其它高集成度步进电机控制芯片相比,在相同高转速下力矩不但不会下降,反而有所增加;支持各种步进电机选型。
TB6560AHQ的主要特点有:
内部集成双全桥MOSFET驱动;
最高耐压40V,单相输出最大电流3.5A(峰值);
具有整步、1/2、1/8、1/16细分方式;
内置温度保护芯片,温度大于150℃时自动断开所有输出;
具有过流保护。
3.1.2 硬件电路的设计及驱动原理
驱动芯片硬件电路如图2。
工作原理如下:M1(22)和M2(23)引脚通过单片机的程序控制细分,共有2、8、16三种细分模式,CW/CCW(21)引脚控制电机的正反转,当需要正转时单片机P1.2输出高电平,需要反转时输出低电平;PROTECT(19)引脚是芯片的保护输出端,当芯片正常工作时由于上拉电阻的作用,单片机P1.3口采集到高电平,当芯片过热保护时,把单片机P1.3口拉低,此时可令程序断开所有输出,从而保护芯片;MO(17)引脚是芯片初始化引脚,芯片初始化结束后会输出低电平,通过这个引脚单片机可以查询芯片初始化是否结束。
TQ2(1)和TQ1(2)控制驱动芯片的输出电流,通过这两个端的选择可以选择不同的工作电流,具体选择模式如表1。可以通过J1和J2跳线选择最大电流的100%、75%、50%和25%。改变电机的驱动电流也就改变了电机力矩的大小。
DCY2(24)和DCY1(25)是电流衰减模式控制端,通过这两个端的选择可以选择不同的衰减模式,具体模式如表2。可以通过J3和J4跳线选择0、25%、50%和100%四种衰减模式。
由于电机本身状况、供电电源状况及脉冲频率等其他因素的影响,步进电机可能会产生高频噪声,通过选择不同的电流衰减模式可以很好的降低甚至消除这种噪声。
OSC(7)引脚是斩波频率控制端,所接电容的大小可以控制斩波频率的大小。当所驱动的步进电机固定后,电容值也随之确定。
当单片机上电后,在初始化程序中对芯片进行复位(把RESET(5)拉低,然后再置高电平),当检测到M0(17)出现低电平时,表示芯片已经初始化。然后根据按键输入或者24C04存储的信息输出脉冲,芯片在脉冲的作用下产生正弦波驱动电流,驱动步进电机运转。在芯片运行期间,保持ENABLE(4)引脚为高电平;当按下停止键或者PROTECT(19)引脚出现低电平时,保持ENABLE(4)引脚为低电平,断开所有输出。
3.1.3 软件程序流程
驱动芯片的控制程序采用C语言进行程序设计,便于主程序的调用,程序流程如下:
⑴初始化TB6560AHQ;
⑵根据速度的大小定义芯片细分管脚;
⑶发送脉冲和正反转信号;
⑷监控芯片保护端,当温度过高时自动断开所有输出。
驱动芯片的细分程序流程图如图3所示。
驱动芯片TB6560AHQ自带2、8、16三种细分模式,单片机通过M1(22)和M2(23)两个引脚可以实现对细分的控制。在程序设计中定义了一个细分标志位t2,当执行完上述程序后t2会自动的被覆上细分值,在圈数程序处理单元,把t2自动的乘上,因此就能实现在细分情况下,速度和圈数的准确对应。
3.2 掉电存储模块
3.2.1 硬件电路设计
掉电存储模块采用ATMEL公司生产的AT24C04芯片,它的容量是512字节×8位,既4k位,对于本系统来说已经足够了。电路的连接如图4所示。
电路中的SDA接单片机的P3.0口,SCL接单片机的P3.1口,由单片机模拟I2C的工作与存储芯片进行通信;上拉电阻如4图所示,选用5.1k的普通电阻。
3.2.2 软件程序设计
3.3 显示模块
3.3.1 硬件电路的选择与设计
显示电路使用RT1602C显示模块,其接线图如图5。
3.3.2 显示设置
本设计中,0—04h显示"MODE";06h—0Bh显示"SPEED:";0Ch—0Eh显示三位速度值;然后第二行和第一行对应显示模式、圈数。
设计中采用P2口作为数据口;采用P3.5、P3.6、P3.7三个接口作为控制接口,通过设置电平高低控制1602的工作状态。
3.4 单片机最小系统模块
3.4.1 硬件电路中晶振选择
单片机的电路选择:因为步进电机运行时的速度靠定时器的定时中断产生,因此中断频率要求高一些,所以晶振选用24MHZ。电容选用30PF的瓷片电容。
3.4.2 定时器初值计算
根据所用步进电机(三洋公司的2-4相两用混和式步进电机)的资料进行分析和现场试验得出:当用四相四拍方式运行时,每个脉冲周期走过1.8°,也就是200个脉冲周期走一圈;当用两相两拍(本设计所选驱动芯片驱动方式)时,每个脉冲周期走过0.9°,也就是400个脉冲周期走一圈。当使用细分驱动时,脉冲数还要乘上细分数。
因此可以得出公式如下:
S=M/(400*N) (1)
式中:S—速度,单位:圈数/分;M—定时器每分钟产生的脉冲数;N—细分数,有2、8、16三种。
脉冲的周期:
P=400*N*S/60*1000 (2)
式中:P—脉冲的周期,单位:毫秒;定时器定时时间:T=P/2。
根据公式(1)和公式(2)可以得出:
T=10000*N*S/3 (3)
根据定时器计算公式:
T=(65536-T0初值)*振荡周期*12 (4)
式中:T0—定时器初值;振荡周期—1/24MHZ。
根据公式(3)和公式(4)可以得出:
T0初值=65536-20000*N*S/3 (5)
当S=100转/分,T=2.5ms;当S=200转/分,T=1.5ms。
根据定时器计算软件,根据T可以得出对应的定时器T0初值。因此把T0初值和S带入公式(4),并经过修正,可以得出:
T0=65536-150000/S+630 (6)
这样就可以根据速度自动求出定时器初值:
TH1=(65536-150000/S+630)/256;
TL1=(65536-150000/S+630)%256。
3.4.3 圈数计算
由3.4.2的介绍可以得出每400个脉冲周期走一圈。当使用细分驱动时,脉冲数还要乘上细分数。可以在程序中设置一个标志位,标志位初值为0,每产生一个定时器中断,标志位就自动加1,当标志位的值和400*N(N:细分数)的值相等时,就表示走过了一圈,此时圈数自动减1或者加1,标志位自动清零。
3.5 按键模块
使用4*4矩阵键盘作为输入设备,[4]硬件电路如图6,可以很方便的输入各种数据和执行各种操作,方便用户使用。
其中数字键10个,用来输入圈数和速度值、模式选择键1个,用来选择模式(共有2种模式:模式1和模式2。模式1能进行存储;模式2不能存储)、正转键1个,按下后电机正转、反转键1个,按下后电机反转、停止键1个,按下电机停止转动、确定键1个,用来把输入的圈数和速度值写进程序的相应位置、调整键1个,按下后进行速度和圈数的设定。
由于按键较多且各自都具有自己独立的功能,在联合调试时经常出现按键混乱的现象,因此解决的办法是在程序中增加按键判断标志位,当进行设置速度、圈数时用对应标志位屏蔽正、反转按键,当电机运行时用标志位屏蔽设置按键的操作。
4.主程序设计
主程序模块中包含了系统初始化、速度和圈数采集、定时器初值计算、按键的判断、驱动芯片控制、以及各个模块的调用等。其中定时器用的是单片机16位的定时器3。主程序流程图如图7所示。
5.联合调试
5.1 细分的实现
步进电机细分技术是步进电机控制器的重要性能指标,细分可以有效降低步进电机运行时的震动和噪音,特别是低速状态下。
但是,当电机需要高速运转时,过多的细分会限制速度的提高,而且,在电机高速运转的时候细分的效果已经不太明显,因此,什么状态下细分、细分数的多少是细分驱动技术的关键点。本设计通过软、硬件联合实现细分驱设置细分数。因此可以达到很好的驱动效果。以八细分为例,通过细分可以很明显观察到细分后电流变化的效果,本来每个脉冲对应的是一个方波的输出,现在经过8细分后每个脉冲只能达到原来的1/8,这样电机的步进角就变为原来的1/8,而且根据速度的大小程序会自动的精度就提高为原来的8倍。这样就很好的解决了电机在低速时的震动和精度问题。本设计采用软硬件联合实现细分实现容易、可靠性高,具有很好的应用价值。
5.2 正弦波驱动电流的实现
传统的控制器由于种种原因大部分采用方波驱动,方波驱动实现容易。但是噪音和振动很大,而且不可能使转速做的很高,输出力矩也较小。正弦波驱动可以显著提高步进电机的运行性能,可以增加电机的转矩,可以提高空载转速,可以降低电机运行时的震动和噪音,因此是新型控制器的首选方案。
5.3 加速曲线的设计
步进电机在启动的时候很重要的一个性能指标就是空载启动频率,在现实应用中,特别是需要高速运动的场合,直接启动频率更是决定了步进电机控制器的应用领域。提高电机启动频率的方法基本上有两种:使用更好电流驱动波形和做一个加速曲线。本设计所用的电机在使用方波电流驱动和没有加速曲线的情况下直接启动的速度最高为200转/分。本设计采用TB6560AQH驱动芯片,它内部自带正弦波电流驱动波形,能很好的提高步进电机的启动频率,但是经过多次的实验得出也只能提高到300转/分左右,还是差强人意。
最终使用阶跃式加速,速度一阶一阶递进式加速,这种方法易于实现,占用单片机资源较少,但是用这种方法时如果阶跃得速度过大,电机会出现震动和噪声。
但是为了不使电机出现震动和噪音,本设计在单片机资源允许的前提下使速度阶跃尽可能的小。具体的做法是:单片机上电工作后首先对速度进行比较,以200转/分为基准,如果速度小于200转/分则完全可以直接启动,不需要加速曲线;当速度高于200转/分时,首先把速度差求出来,让定时器首先以200转/分的速度产生脉冲,在定时器中断函数中根据速度差把速速逐渐提高,直到速度差为零。具体的流程图如图8。
5.4 本设计达到的主要性能指标
⑴运行速度精度:可以使速度精度达到96%以上(速度精度=实际速度/设定速度*100%)。
⑵最大空载起动频率:可达到的最大空载启动频率为1.5KHZ。
⑶最大空载的运行频率:最大空载运行频率3KHZ。
⑷运行矩频特性:本设计由于没有专业的转矩测试仪器,因此无法给出准确的转矩数值,转矩变化时的频率为800HZ。
6.结论
步进电机是一种通过电脉冲信号控制相绕组电流实现定角转动的机电元件,与其他类型电机相比具有易于开环精确控制、无积累误差等优点,在众多领域中获得了广泛的应用。国内研究步进电机驱动器的科研单位和公司很多,但是功能大多单一化,很多都是只能驱动固定用途的步进电机,且多不带细分,价格较贵。很难满足社会生活中需要灵活运用、低成本且功能要求较全的场合。
本设计是根据现实生活中常用的步进电机和常用功能设计的驱动器,设计的主要目的是解决步进电机驱动器功能单一和生产成本的问题。
参考文献
[1]杜坤梅等.电机控制技术[M].哈尔滨:哈尔滨工业大学出版社,2002年2月
[2]徐大诚等.微型计算机控制技术及应用[M].北京:高等教育出版社,2003年5月
[3]沙占友等.单片机电路设计[M].北京:电子工业出版社,2006年6月
[4]余永全等.单片机应用系统的功率接口技术[M].北京:北京航空航天大学出版社,2004年9月
篇7
关键词:LD3320语音芯片;无线控制;MSP430G2553单片机
1 系统方案设计
系统方案如图1所示,由单片机2个最小系统、语音识别模块、无线发送及接收模块、显示模块、按键组成。
语音识别电路主要芯片采用的是LD3320语音芯片,采集到用户声音指令后,经过去除噪音、放大语音信号后,经过MSP430G2553微处理器处理,控制NRF24L01无线发送及接收一体化芯片发送信号,当无线接收模块接收到信号后,传送给微处理器控制步进电机做出相应动作。
2 硬件设计
2.1 单片机
本系统设计的微处理器采用的是美国德州仪器(TI)公司生产的低功耗MSP430G系列的2553单片机作为核心控制芯片,该芯片具有16位的RISC CPU,DCO可在不到1us时间内,从低功耗模式到运行模式的唤醒,以CCS v5.0作为软件开发平台,通过Cadence Allegro 16.5 软件设计原理图、PCB图[1]。
2.2 语音识别电路
语音识别电路主要采用LD3320芯片,LD3320支持非特定语音辨别,每次识别的过程是把用户说出的语音内容, 通过频谱转换为语音特征, 再将这个转换后的语音特征和 “关键词语列表” 中的条目一一进行匹配, 最优匹配的一条即作为识别结果[2],工作原理框图如图2所示。
2.3 无线收发电路
无线收、发电路都采用NRF24L01芯片作为信号的发送和接收,它工作在世界通用的ISM频段2.4-2.5GHZ内。无线收发器芯片由频率发生器、SchockburstTM模式控制器、功率放大器、晶体振荡器、调制器、解调器组成。
2.4 步进电机电路
步进电机原理是将电脉冲转化为角位移,当步进驱动器接收到一个脉冲信号,它就驱动步进电机按设定的方向转动一个固定的角度(即步进角)。可以通过控制脉冲来控制角位移量,从而达到准确定位的目的;同时可以通过控制脉冲频率来控制电机转动的速度和加速度,从而达到调速的目的。
MSP430G2553微型处理不能通过IO口直接控制步进电机的转动,需要在处理器和电机之间加入一个驱动电路,可采用ULN2003驱动电机的专用芯片进行驱动电路的设计[3]。
3 程序设计
程序的设计在整个系统中占有很重要的作用,对LD3320进行初始化,将其调整为接受模式,接收语音数据,开辟语音数据存放空间;然后对将NRF24L01调整其为接受模式,读取状态寄存器,开辟接受数据存放空间;最后对ULN2203进行初始化,从LD3320得到语音信号后,经过NRF24L01处理使电机做正、反转的反应,流程图如图3所示。
4 实物制作与测试
通过Cadence Allegro 16.5 软件设计完成PCB图并打印出来后,通过热转印法,把原理图转印到覆铜板表面,然后通过三氯化铁腐蚀铜板,腐蚀完毕,焊接元器件,采用CCS v5.0编写程序并通过Flash仿真工具下载到芯片中,测试语音识别芯片是否可以识别出用户发出的指令,再测试无线接收模块是否接收到语音信号,然后再测试驱动电路是否可以正常驱动电机的转动。
5 结论
本文给出了低功耗的MSP430G2553语音无线控制步进电机系统的设计,利用TI公司的2553单片机作为核心控制芯片,LD3320作为语音识别电路主要语音芯片,采集到用户发出的指令,通过NRF24L01无线收发模块发送和接收,进而驱动电机做出相应的动作,由于采用语音识别,本系统具有良好用户体验,具备一定的实际应用价值。
参考文献
[1]《单片机原理及接口技术》 ,李朝青,2012,电子工业出版社.
篇8
摘要:各种步进电机专用开发系统,适用于数控机床及某些特定条件及系统。本文通过单片机为开发平台,对步进电机进行控制,主要介绍步进电机控制器、驱动电路和LED显示电路的设计,其中在步进电机控制器的设计中,重点阐述脉冲产生电路以及对速度的控制,实现对步进电机速度精确控制的开发系统。
关键词:单片机;步进电机;恒变速控制系统
中图分类号:TP273文献标识码:A
1引言
步进电机是一种将电脉冲转换成相应的角位移或线位移的电磁装置,它具有低价格,易实现调速,系统简单,能快速启动和停止,易定位准确,功率小等优点。因此,它作为唯一能以开环结构用于数控机床中的电动机,在经济型数控机床系统获得了广泛的应用。在早期的控制方案中,控制步进电机运转的时序脉冲由信号发生器产生,这种方式通用性差,成本高。采用单片机控制,则可以很方便的使不同相数的步进电机按任意一种可行的通用方式进行控制。本文就是实现的单片机对步进电机的数字控制系统。在这个控制系统中,控制器是它的核心,因为它担负着产生脉冲,发送、接受控制命令的任务。
2系统总体方案硬件设计
本系统选用89C51单片机为控制核心,由89C51,74LS373,EPROM2732等器件构成最小系统,扩展的2732用来存放程序和表格。P1.0,P1.1,P1.2分别控制步进电机A,B,C各相绕线,89C51单片机的P1口只能驱动三个LSTTL输入端,而被控制的步进电机要求高压,大电流,故在P1口后加驱动器,以便驱动脉冲功率放大级的复合晶闸管,使电机绕组的静态电流达到驱动电流。此外考虑到计算机的抗干扰能力及安全,将计算机与驱动器之间加上隔离接口[1]。系统硬件图如图1所示。
通过上面的系统框图,我们可以看到本系统主要由四部分组成,即步进电机控制器,步进电机驱动电源,步进电机和LED状态显示,本文着重介绍步进电机控制器,步进电机驱动电源,LED显示状态三部分。
2.1步进电机控制器
步进电机控制器主要由单片机、晶振电路、8K RAM 存储模块、光电隔离等电路组成,如图2所示[2]。
1)晶振电路
单片机的时钟信号通常用两种电路形式得到:内部振荡方式和外部振荡方式。在引脚XTAL1和XTAL2外接晶体振荡器(简称晶振)或陶瓷谐振器,就构成了内部振荡方式。由于单片机内部有一个高增益反相放大器,当外接晶振后,就构成了自激振荡器并产生振荡时钟脉冲。内部振荡方式的外部电路如图1所示。本系统选C1和C2值为22pF.
2)光电隔离电路
利用光隔离器组成的光电隔离电路将控制器与外部的驱动电路隔离开来,使得外部电路的变化不至于影响或者损坏控制系统,从而提高系统的可靠性,增强抗千扰能力。光隔离器最重要的参数是电流传输比CTR,应注意通常其值为0.2-0.9.输入数字信号提供一定的电流(5-10mA)时,光隔离器才会把放大的数字电平输出。光隔离器联结时注意信号正负逻辑。光隔离器的输入、输出端地线必须互相隔开,并且输入、输出端两个电源必须单独供电,否则,如果使用同一电源外部干扰信号可能通过电源串到系统中来。
3)存储模块
由于89C51单片机片内只有128个字节的RAM,而本系统中需要存储的数据比较多,需要扩展外部RAM。
2.2步进脉冲产生电路
在采用单片机的步进电机开环系统中,控制系统的CP脉冲的频率或者换向周期实际上就是控制步进电机的运行速度。系统可用两种办法实现步进电机的速度控制。一种是延时,一种是定时。
延时方法是在每次换向之后调用一个延时子程序,待延时结束后再次执行换向,这样周而复始就可发出一定频率的CP脉冲或换向周期。延时子程序的延时时间与换向程序所用的时间和,就是CP脉冲的周期。该方法简单,占用资源少,全部由软件实现,调用不同的子程序可以实现不同速度的运行。但占用CPU时间长,不能在运行时处理其他工作。因此只适合较简单的控制过程。
定时方法是利用单片机系统中的定时器定时功能产生任意周期的定时信号,从而可方便的控制系统输出CP脉冲的周期。当定时器启动后,定时器从装载的初值开始对系统及其周期进行加计数,当定时器溢出时,定时器产生中断,系统转去执行定时中断子程序。将电机换向子程序放在定时中断服务程序中,定时中断一次,电机换向一次,从而实现电机的速度控制。由于从定时器装载完重新启动开始至定时器申请中断止,有一定的时间间隔,造成定时时间增加,为了减少这种定时误差,实现精确定时,要对重装的计数初值作适当的调整。调整的重装初值主要考虑两个因素一是中断响应所需的时间。二是重装初值指令所占用的时间,包括在重装初值前中断服务程序重的其他指令因。综合这两个因素后,重装计数初值的修正量取8个机器周期,即要使定时时间缩短8个机器周期。
用定时中断方式来控制电动机变速时,实际上是不断改变定时器装载值的大小。在控制过程中,采用离散办法来逼近理想的升降速曲线。为了减少每步计算装载值的时间,系统设计时就把各离散点的速度所需的装载值固化在系统的ROM中,系统在运行中用查表法查出所需的装载值,这样可大幅度减少占用CPU的时间,提高系统的响应速度[3]。
2.3LED运行状态显示
在本系统中,用74LS164作为显示驱动,带锁存,采用串行接法,这样可以节约I/0口资源,但要使用SIO,发送数据时容易控制。
3系统软件部分
系统软件的主要任务是产生脉冲序列,并能按规定的顺序送出脉冲,从而控制步进电机的转向和转速。
3.1产生脉冲序列
其方法为先输出一个高电平,对某一个记数单元进行累加,输出一个高电平之后维持一段时间,然后输出一个低电平在延时,延时长短由步进电机的速度决定。
3.2方向控制
通常有三种方法:
(1)三相单三拍:ABCA;
(2)三相双三拍:ABBCCAAB;
(3)三相六拍:AABBBCCCAA;
按以上顺序通电,步进电机正转;按相反顺序通电,步进电机反转。
3.3速度控制
控制步进电机的运行速度,实际上就是控制系统发出CP脉冲的频率或换相的周期。利用单片机芯片内部定时器的可编程性及定时功能,可以产生任意周期的定时信号,从而可方便的控制系统输出CP脉冲的周期,实现对电动机速度的控制[4]。
3.4程序设计
本系统主要介绍三相六拍的控制软件,具体设计过程详见表1,图3所示。
4小结
单片机作为性能极佳的控制处理器,它比步进电机的传统控制器件,无论从功能,灵活性,可靠性等方面来说,更为优越。步进电机开环控制系统具有成本低、简单、控制方便等优点。在此方案设计中,负载位置对控制电路无反馈,因此步进电机必须正确响应每次励磁变化。如果励磁频率选择不当,电机不能够到新的要求位置,那么实际的负载位置相对于控制器所期待位置便会出现永久性误差,也就是“失步”和“过冲”现象,可以采用位置反馈或位置反馈确定与转子位置相适应的正确相位转换,可以大大改善步进电机的性能,这样就可以获得更加精确的位置控制和高很多、平稳很多的速度了。
参考文献
[1]娄俊,朱志甫.基于单片机AT89C51的步进电机控制系统设计[J].湖南农机,2010,9:34-36.
[2]杨忠宝,林海波.基于80C196MC的步进电机斩波恒流均匀细分电路的实现[J].微计算机信息,2003,7:59-61.
篇9
关键词:单片机;无线控制;车位锁
随着汽车数量的迅速增加,研究一种能够实现无线遥控的红外车位锁就是十分必要的。当用户靠近停车位时,不必下车手动翻转车位锁的档杆,只需要轻触手中的遥控器,便可控制档杆的起降[1]。
1 总体设计
无线红外遥控车位锁控制系统由以下几个部分构成:单片机最小系统模块、HX1838接收器、指示灯光模块,ULN2003驱动模块以及按键模块等。软件程序:采用Proteus软件对系统的控制过程进行模拟,采用当今较为熟悉和成熟的C语言来对软件部分进行编程。该控制系统是基于AT89C51无线红外遥控控制系统,主要实现以下功能:在车位锁中应有无线遥控接收装置,可实现远程,无线控制;该无线红外遥控控制系统应可以接受该小区的物业管理信号,对车位锁的杠杆的升降进行控制;防止电路过流;良好的防水设施;以单片机为控制器,提高其保密性以及设备的可靠性。
2 硬件电路的设计
单片机是一种将运算器,总线,I/O以及存储阵列全部集成在一块小芯片中的CPU。得益于现在发展越来越快的半导体制造技术,现在单片机可以将越多越多的原本属于PC机的功能全部集成到一块小小的芯片中去。本控制系统所采用的单片机是支持MCS-51指令集的AT89C51。选用AT89C51作为核心CPU是因为AT89C51高可靠度,成本低廉,同时兼容C语言程序作为软件部分。
Hx1838红外接收模块。本系统需要无线远程控制车位锁,故选用红外作为传递信号的载体。其中选用Hx1838作为红外接收器。完整的红外通信过程分为发送端和接收端两大部分,本控制系统红外发送端采用的市面上较常用的红外线遥控器,所以只需在车位锁上加装一个红外线接收器,负责接收红外遥控器发出控制信号,同时将信号放大,检测波形,整形。在Hx1838接收到相对应频率的红外信号之后,Hx1838会自动的将红外信号解码成为TTL电平中的低电平,输送给单片机。
ULN2003驱动模块。由于对本系统的执行器步进电机的控制是通过一系列的脉冲信号完成,但是如果通过单片机对执行器直接控制的时候,仅仅靠单片机输出端口的电流的大小远远达不到驱动电机的水平,因此需要一个中介来对单片机输出的电流进行放大。本控制系统选用ULN2003来负责这部分--即对电流的放大。
步进电机执行模块[2]。步进电机的价格低廉,内部结构简单、可靠,并且由于步进电机采用开环控制的方法,所以其控制过程简单,不需要负反馈的存在。对步进电机的控制需要一系列的脉冲信号来对其进行控制,所以根据不同的控制需求,其脉冲信号也有不同。本控制系统所采用的执行器是28BJ-48步进电机。
3 软件设计
本控制系统的核心控制器是AT89C51,再给单片机配以最小配置、驱动电路、红外遥控接收电路构成系统的硬件电路。但是,光一个硬件电路是不足以完成本系统的控制,一个完整的系统包含硬件部分以及软件部分。在根据对本控制系统的控制要求进行软件编程的时候,既可以采用汇编语言,也可以采用C语言进行编程。在初始化中,包括将程序指针,定时器以及中断初始化。在红外解码之后,在比对之后,选择相对应的脉冲序列,来控制步进电机。
当Hx1838接受到来自遥控器的控制信号之后,单片机需对Hx1838传递过来的信号进行解码处理。当单片机将红外信号解码处理好之后,根据解码之后的结果,选择相对应的脉冲序列来控制步进电机。
4 结束语
在制作实物之前,将全部的电路图在Proteus软件中进行模拟,然后将本控制系统的程序加载到AT89C51单片机中,对整个控制过程进行测试。得到以下结论:由单片机、Hx1838红外接收模块、ULN2003驱动模块和步进电机执行模块构成地硬件模块,配上C语言设计的软件模块,可以完好的实现红外遥控车位锁控制系统。
参考文献
[1]施新华.利用单片机实现的红外遥控技术[J].上海电机学院学报,2006,9(3):69-71.
篇10
【关键词】数字――模拟混合集成电路,施密特触发器,波形的产生与交换
1概述
1.1555定时器的简介。555定时器是一种多用途的数字――模拟混合集成电路,利用它能极方便地构成施密特触发器、单稳态触发器和多谐振荡器。由于使用灵活、方便,所以555定时器在波形的产生与交换、测量与控制、家用电器、电子玩具等许多领域中都得到了广泛应用。
1.2 555定时器的应用:(1)构成施密特触发器,用于TTL系统的接口,整形电路或脉冲鉴幅等;(2)构成多谐振荡器,组成信号产生电路;(3)构成单稳态触发器,用于定时延时整形及一些定时开关中。
2 、555定时器的电路结构与工作原理
555 定时器的功能主要由两个比较器决定。两个比较器的输出电压控制 RS 触发器和放电管的状态。在电源与地之间加上电压,当 5 脚悬空时,则电压比较器 C1 的同相输入端的电压为 2VCC /3,C2 的反相输入端的电压为VCC 若触发输入端 TR 的电压小于VCC /3,则比较器 C2 的输出为 0,可使 RS 触发器置 1,使输出端 OUT=1。如果阈值输入端 TH 的电压大于 2VCC/3,同时 TR 端的电压大于VCC /3,则 C1 的输出为 0,C2 的输出为 1,可将 RS 触发器置 0,使输出为 0 电平。
它的各个引脚功能如下:
1脚:外接电源负端VSS或接地,一般情况下接地。
8脚:外接电源VCC,双极型时基电路VCC的范围是4.5 ~ 16V,CMOS型时基电路VCC的范围为3 ~ 18V。一般用5V。
3脚:输出端Vo
2脚:低触发端
6脚:TH高触发端
4脚:是直接清零端。当此端接低电平,则时基电路不工作,此时不论TR、TH处于何电平,时基电路输出为“0”,该端不用时应接高电平。
5脚:VC为控制电压端。若此端外接电压,则可改变内部两个比较器的基准电压,当该端不用时,应将该端串入一只0.01μF电容接地,以防引入干扰。
7脚:放电端。该端与放电管集电极相连,用做定时器时电容的放电。
3步进电机简介
步进电动机是一种将电脉冲信号转换成相应角位移或线位移的电动机,它的运行需要专门的驱动电源,驱动电源的输出受外部的脉冲信号控制。每一个脉冲信号可使步进电机旋转一个固定的角度,这个角度称为步距角。脉冲的数量决定了旋转的总角度,脉冲的频率决定了电动机旋转的速度,改变绕组的通电顺序可以改变电机旋转的方向。在数字控制系统中,它既可以用作驱动电动机,也可以用作伺服电动机。它在工业过程控制中得到广泛的应用,尤其在智能仪表和需要精确定位的场合应用更为广泛。
虽然步进电机已被广泛地应用,但步进电机并不能象普通的直流电机,交流电机在常规下使用。它必须由双环形脉冲信号、功率驱动电路等组成控制系统方可使用。因此用好步进电机却非易事,它涉及到机械、电机、电子及计算机等许多专业知识。
3.1工作特点
1.一般步进电机的精度为步进角的3-5%,且不累积。
2.步进电机外表允许的最高温度。步进电机温度过高首先会使电机的磁性材料退磁,从而导致力矩下降乃至于失步,因此电机外表允许的最高温度应取决于不同电机磁性材料的退磁点;一般来讲,磁性材料的退磁点都在摄氏130度以上,有的甚至高达摄氏200度以上,所以步进电机外表温度在摄氏80-90度完全正常。
3.步进电机的力矩会随转速的升高而下降。当步进电机转动时,电机各相绕组的电感将形成一个反向电动势;频率越高,反向电动势越大。在它的作用下,电机随频率(或速度)的增大而相电流减小,从而导致力矩下降。
4.步进电机低速时可以正常运转,但若高于一定速度就无法启动,并伴有啸叫声。步进电动机以其显著的特点,在数字化制造时挥着重大的用途。伴随着不同的数字化技术的发展以及步进电机本身技术的提高,步进电机将会在更多的领域得到应用。
步进电机是将电脉冲信号转变为角位移或线位移的开环控制元件,电机的转速、停止的位置取决于脉冲信号的频率和脉冲数,当步进驱动器接收到一个脉冲信号,它就驱动步进电机按设定的方向转动一个固定的角度,称为“步距角”,它的旋转是以固定的角度一步一步运行的。可以通过控制脉冲个数来控制角位移量,从而达到准确定位的目的;同时可以通过控制脉冲频率来控制电机转动的速度和加速度,从而达到调速的目的。以上为555定时器构成的脉冲信号发生器,由555的原理可知接通电源后,V+通过R1,R2,RP1对C3充电,当UC3=2/3V+时,振荡器输出UO翻转成0,此时放电管导通,,使放电端接地,电容C3通过RP1,R2放电是UC3下降,当UC3下降到小于1/3V+时,UO又翻转成1,周而复始。该装置产生的脉冲信号的脉宽T=TH+TL。
TH由定容C3充电时间决定TH=0.7(R1+R2+PR1)*C3
TL由定容C3放电时间决定TL=0.7(R2+PR1)*C3