基于FPGA的步进电机步距角的细分设计

时间:2022-08-15 07:45:19

基于FPGA的步进电机步距角的细分设计

摘要:传统的步进电机步距角细分控制,是把单片机作为控制芯片,外加分立的数字电路和模拟电路构成。因此受到单片机工作频率的限制,细分的精度不是很高,控制性能也不是很理想。该文提供了一种基于FPGA的步进电机步距角的细分设计,很好的解决了步进电机分辨率低以及低速运行噪声大的问题,并且实现了分辨率的可调节性。

关键词:步进电机;步距角细分;FPGA

中图分类号:TP368文献标识码:A文章编号:1009-3044(2011)31-0000-00

Step Angle Subdivision Design of Stepper Motor Based on FPGA

WANG Jian, YANG Rui, CHEN Jia-lin

(College of Engineering, Ocean University of China, Qingdao 266100, China)

Abstract: The traditional control of step angle in stepper motor is composed of a microcontroller and a separated digital and analog circuit. Therefore, subject to the microcontroller operating frequency limit, the accuracy of segmentation is not very high, control performance is not very satisfactory. This article provides a FPGA-based step angle sub-design of stepper motor, and it is a good solution to the problem of low-resolution of stepper motor, and it achieves scalability.

Key words: stepper motor; step angle; FPGA

步进电机是一种离散运动的装置,和现代数字控制技术有着本质的联系。它是一种将电脉冲信号直接转换成相应的角位移(或者线位移)的机电执行元件,允许开环工作,具有结构简单、坚固耐用和工作可靠的优点,因此广泛的应用于工业控制领域。

但是由于步进电机输入脉冲信号的不连续,使得步进电机的运行存在许多不足之处,尤其是在低频段运行时,比如噪声大、分辨率低、低频振荡等问题,这些都影响了步进电机的性能提高,制约了其更广泛的应用。

传统的步进电机步距角[1]细分控制,把单片机作为控制芯片,外加分立的数字电路和模拟电路构成。因此受到单片机工作频率的限制,细分的精度不是很高,控制性能也不是很理想。

本系统是建立在FPGA[2]基础上的步进电机步距角的细分设计。很好的解决了步进电机分辨率低的问题,并且实现了分辨率的可调节性。模拟三角波切割正弦波以便得到PWM波形来控制步进电机,因此输入信号是近似连续的,噪声比较小。整个系统高度集成在FPGA上,很好的利用了硬件逻辑电路对数字信号的高速并行处理能力,极大的提高了细分的精度和控制性能。

1 步进电机工作和细分原理

1.1 步进电机旋转原理

步进电机的转子一般由软磁或者硬磁材料冲制、叠压而成,没有绕组,其定子则为绕组绕制而成。转子为软磁材料构成的,叫做反应式。转子为永磁材料的,叫做永磁式。混合式步进电机是反应式和永磁式步进的结合体,具有两者的优点。

步进电机在不细分的方式下,通过改变电机绕组激磁电流的“通”和“断”,也即改变绕组电压的接通和关断,来使步进电机的转子以本身固有的步距角来转动。电机是靠定子和转子磁极间的电磁力作为旋转动力的。

整步驱动原理:对于整步驱动方式,电机是每次电流换相走一个机械步距角。如对于一个机械步距角是1.8°的步进电机来说,电机走一整步,转1.8°。图1是整步驱动方式的电流换相示意图。

图1 整步驱动电流流向示意图

整步驱动每一时刻只有一相通电。电流时序如下:

BB'A'AB'BAA'

半步驱动原理:通过对整步驱动步进电机原理分析可以看出,整步驱动电机运动抖动明显,噪声会比较大。半步驱动是电机走一个半步,如对于机械步距角是7.2°的电机,半步驱动每走一步,电机旋转1/2机械步距角,是3.6°。图2是半步驱动方式的电流换相示意图。

图2 半步驱动电流换相示意图

由图2可见,半步驱动的电机驱动电流时序如下:

BB'A'A,BB' A'AA'A,/B'BB'BAA',B'BAA' AA',BB'

细分驱动原理:通过对整步驱动和半步驱动的原理分析,我们可以了解步进电机驱动电流的走向,并发现驱动运动规律。如图3所示。

图3 电机细分电流流向示意图

根据步进电机细分规律,转子走一步的角度将会随着细分数的增加而减小。

目前,最常用的开关型步进电机细分驱动电路有斩波式和脉宽调制(PWM)式两种。

斩波式细分驱动电路的基本工作原理是对电机各相绕组的电流比进行控制,从而改变电磁力的合力方向,进而驱动转子转向该方向。首先检测各相绕组电流,并与相应的输出控制电流进行比较,若检测出的电流值大于控制电流,电路将驱动管截止,反之,使驱动管继续导通。这样,就能输出不同的驱动电流和绕组间的电流比。依照旋转磁场的原理来调整控制电流的变化既可达到控制步进电机旋转和步距角的目的。

脉宽调制式(PWM)细分驱动电路是用逻辑代替复杂的程序控制,把控制电压输出的脉冲加在H桥的输入端,利用H桥的通断将数字脉冲转换为电压脉冲,从而改变输出到电机绕组上的平均电流。由于电机绕组是一个感性负载,对电流有一定的滤波作用,而且脉宽调制电路的调制频率较高,一般大于20kHz,因此,虽然是断续通电,但电机绕组中的电流还是较平稳的。

和斩波式细分驱动电路相比,脉宽调制式细分驱动电路的控制精度高,工作频率稳定,它的作用是将给定的电压信号调制成接近连续的驱动电流信号,角速度的波动也随着细分数的增大而减小,一般角速度波动与步距角成正比,与细分数成反比。

因此,我们选用脉宽调制式细分驱动电路,图4为SPWM控制方式。

图4 电机细分电流流向示意图

1.2 步进电机步距角和分辨率的计算

经过步进电机细分原理分析,三角波切割正弦波得到的PWM波形,可以看出n个三角波就可以得到n个PWM方波。如图4所示,单极性PWM控制方式波形。对于单极性波形,波形中有+Ud和零两种电平,n个三角波可以切割得到n个PWM方波。

本设计中,正弦波存储器大小为256byte,三角波存储器容量为64byte,正弦波存储器频率分频倍数设置为1~16,所以此时得到PWM波的最大分辨率为:

Fmax= Vrom0/ Vrom1×16=256/64×16=64

最小分辨率为:

Fmin= Vrom0/ Vrom1×1 =256/64 = 4

步进电机的步距角定义为:对应一个脉冲信号,转子所转过的角位移。步距角越小,说明分辨率越高。步距角的计算公式如下:

θ=2π/(2×N×f)

两相步进电机转子的齿数N为100,采用双四拍则最小细分步距角为:

θ=2π/[2×(N×Fmax)]= 0.028125°

最大细分步距角为:

θ=2π/[2×(N×Fmin)]=0.45°

2 步进电机细分的FPGA实现

我们采用的是两相步进电机,步距角为7.2°。其系统框图如图5所示

图5 系统框图

利用Quaturs II开发工具软件将步进电机的细分过程用数字逻辑搭建出来。本设计使用Quartus II 6.0进行编程设计。细分逻辑大致分为四个大的模块:时钟控制模块、分辨率控制、SPWM发生模块、输出选择模块细分逻辑框图如图6:

图6 细分逻辑框图

2.1 分辨率控制模块

利用计数器的分频功能,通过设定计数器分频比系数达到控制步距角的细分。该计数器能够提供1~16倍的细分范围。逻辑实现原理图如图7所示。

图7 步距角细分倍率控制模块实现逻辑图

2.2 SPWM发生模块

SPWM发生模块逻辑实现原理图如图8所示。

图8 SPWM发生模块逻辑实现原理图

Counter1和Counter2作为ROM的地址信号发生器。ROM0和ROM3中分别存放64Kbyte的三角波和256Kbyte的正弦波。通过地址信号发生器读取ROM中的值,将读取的信号值经过比较器比较得到SPWM。通过对Counter1频率的控制,能够得到不同分辨率的SPWM。

2.3 电机驱动电路

电机驱动电路原理图如图9所示

图9 电机驱动电路原理图

本模块设计以L298芯片为核心,L298N内部包含4信道逻辑驱动电路,是一种二相或四相步进电机的专用驱动器,可同时驱动两个二相或一个四相步进电机,内含二个H-Bridge的高电压、大电流双全桥式驱动器,接收标准TTL逻辑电平信号,可驱动46V、2A以下的步进电机,且可以直接通过电源来调节输出电压。

3 仿真结果

我们实验研究的步进电机为两相混合式步进电机。控制方式采用双四拍方式,机械步距角为1.8°。仿真结果如图10所示。

图10 细分逻辑仿真实现图

通过细分逻辑仿真图的分析我们可以知道,通过控制SWE信号改变步进电机细分频率,进而改变步进电机细分数。该图中的IN1和IN2为一相,IN3和IN4为一相。四路脉冲满足SPWM波变化规律。信号输出经过L298加上驱动电流就能控制步进电机产生磁场,驱动转子旋转。

4 结论

本设计解决了细分倍数固定的三相步进电机的PWM波形的细分问题,用数字电路较好的实现了这一设计。

参考文献:

[1] 刘宝廷,程树康.步进电动机及其驱动控制系统[M].哈尔滨:哈尔滨工业大学出版社,1997:35-42.

[2] 李兰英.NiosⅡ嵌入式软核SOPC设计原理及应用[M].北京:北京航空航天大学出版社,2006:187-195.

收稿日期:2011-09-25

作者简介:王剑,研究生,主要研究方向为智能仪器与仪表。

上一篇:基于VRML的虚拟建筑中场景优化与漫游技术的研... 下一篇:基于绩效技术的教学设计模型研究