论文部分内容阅读
【摘要】本文简要介绍了脉宽PWM用于步进电机调速的基本原理,给出了利用单片机实现PWM信号对步进电机进行调速的硬件电路和软件程序流程。
【关键词】PWM技术 步进电机 调速 单片机
【中图分类号】F407.61 【文献标识码】A 【文章编号】1009-9646(2009)01(a)-0202-02
1 引言
步进电机是一种可将电脉冲信号转变成角位移或线位移的电磁机械装置,可以对其旋转角度和旋转速度进行高精度的控制,是工业过程控制和仪表中常用的执行部件之一。
步进电机在各种自动化控制系统中有着广泛的应用,是机电一体化装置中的关键部件,大家熟悉的录音机、电唱机、录相机、电子计算机等,都不能缺少电机.机器人手臂的运动,高级字轮的字符选择,计算机驱动器的磁头控制,打印机的字头控制等,都要用到步进电机。
对步进电机进行必要的调速是实际应用中一个必须解决的问题。
在非超载的情况下,步进电机的转速、停止的位置只取决于脉冲信号的频率和脉冲数,而不受负载变化的影响,即给电机加一个脉冲信号,电机则转过一个步距角。这一线性关系的存在,加上步进电机只有周期性的误差而无累积误差等特点。通过控制步进电机的一个脉冲到下一个脉冲的时间间隔来改变脉冲的频率,延时的长短来具体控制步进角来改变电机的转速,从而可以实现对步进电机的调速。
2 PMW用于步进电机调速的基本原理
传统的步进电机所需的数字式电脉冲信号(即方波控制信号)一般都是借助数字逻辑电路产生。随着嵌入式技术的不断发展,单片机的应用更为广泛,脉宽调制(PWM)是利用微处理器的数字输出来对模拟电路进行控制的一种非常有效的技术,PWM是一种对模拟信号电平进行数字编码的方法。通过高分辨率计数器的使用,方波的占空比被调制用来对一个具体模拟信号的电平进行编码。PWM信号仍然是数字的,因为在给定的任何时刻,满幅值的直流供电要么完全有(ON),要么完全无(OFF)。电压或电流源是以一种通(ON)或断(OFF)的重复脉冲序列被加到模拟负载上去的。通的时候即是直流供电被加到负载上的时候,断的时候即是供电被断开的时候。
PMW信号其占空比就是脉冲中高电平与低电平的宽度比。因此可以将脉冲的占空比变成电压。通过调整占空比来调整输出模拟电压。
PMW方式是直流电机工作的一种常用方式。PWM 技术指通过改变矩形脉冲的占空比,以得到不同的平均直流电压去驱动电机。因而对步进电机的角位移速度的控制可以通过调整脉宽调制信号来控制,不同的占空比可以控制电机不同的转速。
3 单片机输出PMW信号的方法
对于PWM 电压信号的产生可以采用含有PWM 输出的单片机(如PIC 系列);而大多数如常用的MCS-51 系列单片机以及一些与之兼容的其他系列单片机,其内部不含有PWM 输出。对这样的单片机要实现PMW输出可以有两种办法:一种是采用外接D/ A 转换器的办法来实现,这样硬件复杂,产品成本较高.;另一种是在不增加硬件的条件下,利用软件的方法来实现PWM 电压的输出方法。本文采用第二种方法。这种方法单片机指定定时器输出脉宽控制信号的脉宽和频率周期,信号的脉宽反映了步进电机速度变化的控制指令。
4 利用脉宽PMW技术进行步进电机的调速
a)硬件实现
本设计方案中采用以AT89C51型单片机为控制核心,利用其内部的定时器改变单片机输出端输出PMW脉冲高电平的脉宽及其占空比的大小来控制电机的转速,从而实现对步进电机的转速进行控制,实现对电机调速的功能。从单片机某个I/O口输出PMW信号功率很弱,即使在没有其它外在负载时也无法带动电机,因而不能直接驱动步进电机,所以在实际电路中需要加入了电机驱动芯片提高输入电机信号的功率,从而能够根据需要控制电机转动,本文采用步进电机驱动芯片L293D来驱动步进电机,实现与单片机和步进电机的接口。
(1)单片机
AT89C51是一种带4K字节闪烁可编程可擦除只读存储器的低电压单片机。单片机的可擦除只读存储器可以反复擦除100次。该器件采用ATMEL高密度非易失存储器制造技术制造,与工业标准的MCS-51指令集和输出管脚相兼容。
(2)步进电机驱动芯片L293D
L293D采用16引脚DIP封装,其内部集成了双极型H-桥电路L293D通过内部逻辑生成使能信号。该驱动电路的驱动方式是双极方式,会使步进电机的绕组在两个方向流过电流,这样使得步进电机绕组的利用率较高。H-桥电路的输入量可以用来设置马达转动方向,使能信号可以用于脉宽调整(PWM)。L293D将2个H-桥电路集成到1片芯片上,这就意味着用1片芯片可以同时控制2个电机。每1个电机需要3个控制信号EN12、IN1、IN2,其中EN12是使能信号,IN1、IN2为电机转动方向控制信号,IN1、IN2分别为1,0时,电机正转,反之,电机反转。
(3)接口电路
PMW技术应用于步进电机的调速接口电路如图1,以驱动一个步进电机的一相为例。选用一路PWM连接L293D的EN12引脚,本文接口电路选择P1.0作为单片机的PWM脉冲信号输出。选择两路I/O口(P.2、P1.3),经分别接L293D的IN1和IN2引脚,控制电机的正反转。L293D的输出信号OUT1、OUT2接步进电机的绕组。
b) 软件实现
单片机定时控制脉冲一般有软件定时和定时器定时两种方式。前一种方式占用了CPU的大部分上作时间;通常单片机内部集成了定时计数器,所以常用定时器定时中断来产生脉冲信号,改变定时器的定时时间来得到PWM 电压输出。
软件程序流程如图2。图中定时器状态判别是用查询方式实现,也可以用中断方式来实现。判别是否需要调速需要根据在硬件上设置的速度反馈元件与当时的应用要求来进行计算,可以事先设置一张与速度对应的初值表格,实际编程中采用表格查询的方法来取得所需初值,避免程序中大量的初值计算。
5 结语
此方案选择的器件比较简单,实际中也很容易实现,而且一般的单片机系统中断响应时间大部分在10μs级,因而定时器定时中断来产生脉冲的精确度大致也在10μs级,利用单片机内部定时器的PMW输出实现对步进电机的调速能满足步进电机速度控制的精度要求。
参考文献
[1] 肖灿,江永清,肖耀友.利用脉宽调制实现PG电机的平稳调速.微特电机,2006 34(4).
[2] 卢玉宇.用单片机产生脉宽调制(PWM)电压输出的方法.福建农业大学学报(自然科学版).2001,30(3).
[3] 求是科技.单片机典型模块设计实例导航.北京:人民邮电出版社,2004.5.
[4] 吴守箴.电气传动的脉宽调制控制技术.北京:机械工业出版社,2004.2.
【关键词】PWM技术 步进电机 调速 单片机
【中图分类号】F407.61 【文献标识码】A 【文章编号】1009-9646(2009)01(a)-0202-02
1 引言
步进电机是一种可将电脉冲信号转变成角位移或线位移的电磁机械装置,可以对其旋转角度和旋转速度进行高精度的控制,是工业过程控制和仪表中常用的执行部件之一。
步进电机在各种自动化控制系统中有着广泛的应用,是机电一体化装置中的关键部件,大家熟悉的录音机、电唱机、录相机、电子计算机等,都不能缺少电机.机器人手臂的运动,高级字轮的字符选择,计算机驱动器的磁头控制,打印机的字头控制等,都要用到步进电机。
对步进电机进行必要的调速是实际应用中一个必须解决的问题。
在非超载的情况下,步进电机的转速、停止的位置只取决于脉冲信号的频率和脉冲数,而不受负载变化的影响,即给电机加一个脉冲信号,电机则转过一个步距角。这一线性关系的存在,加上步进电机只有周期性的误差而无累积误差等特点。通过控制步进电机的一个脉冲到下一个脉冲的时间间隔来改变脉冲的频率,延时的长短来具体控制步进角来改变电机的转速,从而可以实现对步进电机的调速。
2 PMW用于步进电机调速的基本原理
传统的步进电机所需的数字式电脉冲信号(即方波控制信号)一般都是借助数字逻辑电路产生。随着嵌入式技术的不断发展,单片机的应用更为广泛,脉宽调制(PWM)是利用微处理器的数字输出来对模拟电路进行控制的一种非常有效的技术,PWM是一种对模拟信号电平进行数字编码的方法。通过高分辨率计数器的使用,方波的占空比被调制用来对一个具体模拟信号的电平进行编码。PWM信号仍然是数字的,因为在给定的任何时刻,满幅值的直流供电要么完全有(ON),要么完全无(OFF)。电压或电流源是以一种通(ON)或断(OFF)的重复脉冲序列被加到模拟负载上去的。通的时候即是直流供电被加到负载上的时候,断的时候即是供电被断开的时候。
PMW信号其占空比就是脉冲中高电平与低电平的宽度比。因此可以将脉冲的占空比变成电压。通过调整占空比来调整输出模拟电压。
PMW方式是直流电机工作的一种常用方式。PWM 技术指通过改变矩形脉冲的占空比,以得到不同的平均直流电压去驱动电机。因而对步进电机的角位移速度的控制可以通过调整脉宽调制信号来控制,不同的占空比可以控制电机不同的转速。
3 单片机输出PMW信号的方法
对于PWM 电压信号的产生可以采用含有PWM 输出的单片机(如PIC 系列);而大多数如常用的MCS-51 系列单片机以及一些与之兼容的其他系列单片机,其内部不含有PWM 输出。对这样的单片机要实现PMW输出可以有两种办法:一种是采用外接D/ A 转换器的办法来实现,这样硬件复杂,产品成本较高.;另一种是在不增加硬件的条件下,利用软件的方法来实现PWM 电压的输出方法。本文采用第二种方法。这种方法单片机指定定时器输出脉宽控制信号的脉宽和频率周期,信号的脉宽反映了步进电机速度变化的控制指令。
4 利用脉宽PMW技术进行步进电机的调速
a)硬件实现
本设计方案中采用以AT89C51型单片机为控制核心,利用其内部的定时器改变单片机输出端输出PMW脉冲高电平的脉宽及其占空比的大小来控制电机的转速,从而实现对步进电机的转速进行控制,实现对电机调速的功能。从单片机某个I/O口输出PMW信号功率很弱,即使在没有其它外在负载时也无法带动电机,因而不能直接驱动步进电机,所以在实际电路中需要加入了电机驱动芯片提高输入电机信号的功率,从而能够根据需要控制电机转动,本文采用步进电机驱动芯片L293D来驱动步进电机,实现与单片机和步进电机的接口。
(1)单片机
AT89C51是一种带4K字节闪烁可编程可擦除只读存储器的低电压单片机。单片机的可擦除只读存储器可以反复擦除100次。该器件采用ATMEL高密度非易失存储器制造技术制造,与工业标准的MCS-51指令集和输出管脚相兼容。
(2)步进电机驱动芯片L293D
L293D采用16引脚DIP封装,其内部集成了双极型H-桥电路L293D通过内部逻辑生成使能信号。该驱动电路的驱动方式是双极方式,会使步进电机的绕组在两个方向流过电流,这样使得步进电机绕组的利用率较高。H-桥电路的输入量可以用来设置马达转动方向,使能信号可以用于脉宽调整(PWM)。L293D将2个H-桥电路集成到1片芯片上,这就意味着用1片芯片可以同时控制2个电机。每1个电机需要3个控制信号EN12、IN1、IN2,其中EN12是使能信号,IN1、IN2为电机转动方向控制信号,IN1、IN2分别为1,0时,电机正转,反之,电机反转。
(3)接口电路
PMW技术应用于步进电机的调速接口电路如图1,以驱动一个步进电机的一相为例。选用一路PWM连接L293D的EN12引脚,本文接口电路选择P1.0作为单片机的PWM脉冲信号输出。选择两路I/O口(P.2、P1.3),经分别接L293D的IN1和IN2引脚,控制电机的正反转。L293D的输出信号OUT1、OUT2接步进电机的绕组。
b) 软件实现
单片机定时控制脉冲一般有软件定时和定时器定时两种方式。前一种方式占用了CPU的大部分上作时间;通常单片机内部集成了定时计数器,所以常用定时器定时中断来产生脉冲信号,改变定时器的定时时间来得到PWM 电压输出。
软件程序流程如图2。图中定时器状态判别是用查询方式实现,也可以用中断方式来实现。判别是否需要调速需要根据在硬件上设置的速度反馈元件与当时的应用要求来进行计算,可以事先设置一张与速度对应的初值表格,实际编程中采用表格查询的方法来取得所需初值,避免程序中大量的初值计算。
5 结语
此方案选择的器件比较简单,实际中也很容易实现,而且一般的单片机系统中断响应时间大部分在10μs级,因而定时器定时中断来产生脉冲的精确度大致也在10μs级,利用单片机内部定时器的PMW输出实现对步进电机的调速能满足步进电机速度控制的精度要求。
参考文献
[1] 肖灿,江永清,肖耀友.利用脉宽调制实现PG电机的平稳调速.微特电机,2006 34(4).
[2] 卢玉宇.用单片机产生脉宽调制(PWM)电压输出的方法.福建农业大学学报(自然科学版).2001,30(3).
[3] 求是科技.单片机典型模块设计实例导航.北京:人民邮电出版社,2004.5.
[4] 吴守箴.电气传动的脉宽调制控制技术.北京:机械工业出版社,2004.2.