0 引言
几十年来,数字技术、计算机技术和永磁材料的迅速发展,为步进电机的应用开辟了广阔的前景。由步进电机与驱动电路组成的开环数控系统,既非常简单、廉价,又非常可靠。此外,步进电机还广泛应用于诸如打印机、雕刻机、绘图仪、绣花机及自动化仪表等。正因为步进电机的广泛应用,对步进电机的控制的研究也越来越多,在启动或加速时若步进脉冲变化太快,转子由于惯性而跟随不上电信号的变化,产生堵转或失步;在停止或减速时由于同样原因则可能产生超步。为防止堵转、失步和超步,提高工作频率,要对步进电机进行升降速控制。本文介绍一个用于自动磨边机的步进电机升降速控制器,由于考虑了通用性,它可以应用于其他场合。
从步进电机的矩频特性可知,步进电机的输出转矩随着脉冲频率的上升而下降,启动频率越高,启动转矩就越小,带动负载的能力越差,启动时会造成失步,而在停止时又会发生过冲。要使步进电机快速的达到所要求的速度又不失步或过冲,其关键在于使加速过程中加速度所要求的转矩既能充分利用各个运行频率下步进电机所提供的转矩,又不能超过这个转矩。因此,步进电机的运行一般要经过加速、匀速、减速三个阶段,要求加减速过程时间尽量的短,恒速时间尽量长。特别是在要求快速响应的工作中,从起点到终点运行的时间要求最短,这就必须要求加速、减速的过程最短,而恒速时的速度最高。而以前升速和降速大多选择按直线规律,采用这种方法时,它的脉冲频率的变化有一个恒定的加速度。在步进电机不失步的条件下,驱动脉冲频率变化的加速度和步进电机转子的角加速度成正比。在步进电机的转矩随脉冲频率的上升保持恒定时,直线规律的升降速才是理想的升降速曲线,而步进电机的转矩随脉冲频率的上升而下降,所以直线就不是理想的升降速曲线。因此,按直线规律升降速这种方法虽然简单,但是它不能保证在升降速的过程中步进电机转子的角加速度的变化和它的输出力矩变化相适应,不能最大限度的发挥电机的加速性能。本系统寻求一种基于FPGA控制的按指数规律升降速的离散控制算法,经多次运行,达到预期目标。
1 加减速控制算法
1.1 加减速曲线
本设计按照步进电机的动力学方程和矩频特性曲线推导出按指数曲线变化的升降速脉冲序列的分布规律,因为矩频特性是描述每一频率下的最大输出转矩,即在该频率下作为负载加给步进电机的最大转矩。因此把矩频特性作为加速范围下可以达到(但不能超过)的最大输出转矩来拟订升降速脉冲序列的分布规律,就接近于最大转矩控制的最佳升降速规律。这样能够使得频率增高时,保证输出最大的力矩,即能够对最大的力矩进行跟随,能充分的发挥步进电机的工作性能,使系统具有良好的动态特性。
由步进电机的动力学方程和矩频特性曲线,在忽略阻尼转矩的情况下,可推导出如下方程:
式中,
为转子转动惯量,K为假定输出转矩按直线变化时的斜率,τ为决定升速快慢的时间常数,在实际工作中由实验来确定。fm为负载转矩下步进电机的最高连续运行频率,步进电机必须在低于该频率下运行才能保证不失步。(1)式为步进电机的升速特性,由此方程可绘制出电机升速曲线。(1)式表明驱动脉冲的频率f应随时间t作指数规律上升,这样就可以在较短的时间内使步进电机的转速上升至要求的运行速度。鉴于大多数的步进电机的矩频特性都近似线性递减的,所以上述的控制规律为最佳。
1.2 加减速离散处理
在本系统中,FPGA使用分频器的方式来控制步进电机的速度,升降速控制实际上是不断改变分频器初载值的大小。指数曲线由于无法通过程序编制来实现,可以用阶梯曲线来逼近升速曲线,不一定每步都计算装载值。
如图1所示,纵坐标为频率,单位是步/秒,其实反映了转速的高低。横坐标为时间,各段时间内走过的步数用N来表示,步数其实反映了行程。图中标出理想升速曲线和实际升速曲线。
步进电机的升速过程可按以下步骤进行处理。
(1)若实际运行速度为fg,从(3.4)式中可算出升速时间为:
(2)将升速段均匀地离散为n段即为阶梯升速的分档数,上升时间为tr,则每档速度保持时间为:
程序执行过程中,对每档速度都要计算在这档速度应走的步数,然后以递减方式检查,即每走一步,每档步数减1。当减至零时,表示该档速度应走的步数己走完,应进入下一档速度。一直循环到给出的速度大于或等于给定的速度为止。减速过程与升速过程刚好相反。
2 频率脉冲的实现
频率脉冲模块的核心是可控分频器,由外部的晶振产生标准频率,只要在分频器的输入端输入相应的分频系数,就可以得到所需的频率。本模块是利用VHDL硬件描述语言,通过QuartusII开发平台,使用Altera公司的FPGA,设计了一种能够满足上述各种要求的较为通用的可控分频器。图2为分频器的原理图,图3为分频器的仿真波形图。
3 结语
基于硬件描述语言VHDL设计的控制器具有开发设计周期短、风险低、系统集成度高、功耗低等优点,将是芯片设计的主流方向。开放式数控系统中,研究实现能硬件复用的加减速模块以及相关功能模块,利用可编程逻辑器件FPGA的可重构能力,能按需求灵活实现功能全定制的运动控制芯片。本文设计了自动磨边机中的指数加减速控制器。在此基础上,只需扩展相应个数的加减速模块即可实现多轴联动加减速控制。
关键字:步进电机控制 可编程逻辑门阵列 硬件描述语言
引用地址:
基于FPGA的步进电机加减速控制器的设计
推荐阅读最新更新时间:2024-05-02 21:07
高电流双极步进电机控制器电路
高电流双极步进电机控制器电路,High current bipolar stepper motor controller Specifications -------------------------------------------------------------------------------- High Current Bipolar Stepper Motor Controller kit is based on chopper drive. Chopper drive is a method of providing a constant current source to a devic
[工业控制]
基于细分驱动的船用仪表步进电机控制的实现
船用仪表从工作原理上区分,有模拟式仪表和数字式仪表。以模拟量组合单元仪表为主的监控仪表所需要的器件数量多,指示精度低。数字式船用仪表多为LED数码管显示方式,LED数码管实际上是由七个发光管组成8字形构成的,加上小数点就是8个。这些段分别由字母a,b,c,d,e,f,g,dp来表示。当数码管特定的段加上电压后,这些特定的段就会发亮,以形成我们眼睛看到的字样了。如:显示一个“2”字,那么应当是a亮b亮g亮e亮d亮f不亮c不亮dp不亮。LED数码管有一般亮和超亮等不同之分,也有0.5寸、1寸等不同的尺寸。小尺寸数码管的显示笔画常用一个发光二极管组成,而大尺寸的数码管由二个或多个发光二极管组成,一般情况下,单个发光二极管的管压降为1.8V
[单片机]
步进电机控制器MS35711T概述、特点及应用
1.产品简述; MS35711T 器件是一款步进电机控制器, 它使用外部 N 沟道 MOSFET 来驱动一个双极步进电机或两个刷式直流电机。 MS35711T 支持全步进到 1/256 步进驱动模式。通过使用自适应消隐时间和包括自动混合衰减模式在内的多种不同的电流衰 减模式, 可实现非常平滑的运动过程。 电机运动采用标准的 DIR/STEP 控制方法。器件运行通过 一 个 SPI 串行接口控制。 输出电流(扭矩)、步进模式、衰减模式 和堵转检测功能都可以通过 SPI 串行接口进行编程。 2.主要特点; 1、PWM 调制微步进电机驱动控制器 2、内置 256 细分 3、可选 STEP/DIR 接口控制或者直接 PWM 控制接
[嵌入式]
基于VHDL的SDRAM接口设计
RAM通常用于数据和程序的缓存,随着半导体工业的发展,RAM获得了飞速的发展,从RAM、DRAM(Dynamic RAM,即动态RAM)发展到SDRAM(Synchronous Dynamic RAM,即同步动态RAM),RAM的容量越来越大、速度越来越高,可以说存储器的容量和速度已经成为半导体工业水平的标志。 1 任务背景 SDRAM具有大容量和高速的优点,目前其存取速度可以达到100~133MHz,单片容量可以达到64Mbit或更高,因此在需要高速、大容量存储器的系统中得到广泛应用,如应用在目前的计算机内存中。但是SDRAM的控制比较复杂,其接口不能直接与目前广泛应用的普通微处理器如MCS-51系列、Motorol
[模拟电子]
C504单片机在步进电机控制方面的应用
摘要: C504是德国SIEMENS公司生产的单片微控制器,文中介绍了C504单片机在步进电机控制方面的应用,给出了利用C504的资源优势,经过一定的扩展来对步进电机进行控制的控制系统结构及方法,另外,该控制系统还具有人机对话功能和较高的性能价格比。
关键词: C504 步进电机 CCU 步距角
步进电机是一种脉冲电机,它是一种能将脉冲信号转换为角位移的数模转换器,可广泛用于无需反馈控制而要求有精确位置的场合,为了改善步进电机的工作特性以及减少硬件电路的连接,近几年来多采用单片机对其控制,但由于各类单片机的功能、容量和价格不同,因而其性能和成本也各不相同。鉴于C504单片机在电机控制方面的独特
[应用]
汽车尾灯VHDL设计
1.系统设计要求
用6个发光管模拟6个汽车尾灯(左右各3个),用4个开关作为汽车控制信号,分别为:左拐、右拐、故障和刹车。车匀速行驶时,6个汽车尾灯全灭;右拐时,车右边3个尾灯从左至右顺序亮灭;左拐时,车左边3个尾灯从右至左顺序亮灭;故障时车6个尾灯一起明灭闪烁;刹车时,6个尾灯全亮
2.系统设计方案
根据系统设计要求,采用自顶向下设计方法,顶层设计采用原理图设计,它由主控模块、左边灯控制模块和右边灯控制模块三部分组成。
3参考VHDL源程序
(1) 主控制模块
说明:此程序为系统主控制模块。当左转时,lft信号有效;右转时,rit信号有效;当左右信号都有效的时,lr有效。
[嵌入式]
CPLD被STM32读写VHDL程序
1 2 3 --本程序用来测试STM32对CPLD的读写操作 4 5 --测试功能如下: 6 7 --向0x05地址写入0x01,LED灯停止闪烁,写入其他数据闪烁继续 8 9 --0x03,0x04寄存器为定值,可以通过STM32读取然后使用串口输出看看是否一致 10 11 12 13 --文件名:AD.vhd 14 15 library ieee; 16 17 use ieee.std_logic_1164.all; 18 19 use ieee.std_logic_unsigned.all; 20 21 22 23 entity AD is 24 25 port
[单片机]
步进电机最简单的驱动方法_步进电机控制方法
步进电机最简单的驱动方法 最简单的步进电机驱动方法是单相双极驱动方式,也称为双相步进驱动方式。该方式只需要使用一个 H桥驱动器和一个脉冲发生器,即可实现步进电机的驱动控制。 具体的驱动过程如下: 将步进电机的两个相连接到 H桥驱动器的两个输出端口。 将脉冲发生器连接到 H桥驱动器的输入端口,通过控制脉冲的频率和占空比,可以控制步进电机的转速和方向。 通过控制脉冲的数量和频率,可以控制步进电机旋转的步数和转角。 需要注意的是,单相双极驱动方式只能实现单个步进电机的基本驱动控制,对于需要高精度、高速度和高扭矩的应用场景,需要采用更复杂的驱动方式和控制算法。 步进电机控制方法 步进电机的控制方法主
[嵌入式]