CN106887982B - 一种基于fpga的步进电机速度控制方法 - Google Patents

一种基于fpga的步进电机速度控制方法 Download PDF

Info

Publication number
CN106887982B
CN106887982B CN201510939836.2A CN201510939836A CN106887982B CN 106887982 B CN106887982 B CN 106887982B CN 201510939836 A CN201510939836 A CN 201510939836A CN 106887982 B CN106887982 B CN 106887982B
Authority
CN
China
Prior art keywords
stepper motor
speed
rotation
fpga
absolute value
Prior art date
Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
Active
Application number
CN201510939836.2A
Other languages
English (en)
Other versions
CN106887982A (zh
Inventor
李卓
朱琳
张国宇
陈朋
孟伟
张哲�
郑金艳
王栋
李丽华
张清
彭鸣
杨源
姚可成
冯耿
宋文
康建涛
赵菲
吕方雷
盛凯南
曾丽婷
王巍
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Beijing Jinghang Computing Communication Research Institute
Original Assignee
Beijing Jinghang Computing Communication Research Institute
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by Beijing Jinghang Computing Communication Research Institute filed Critical Beijing Jinghang Computing Communication Research Institute
Priority to CN201510939836.2A priority Critical patent/CN106887982B/zh
Publication of CN106887982A publication Critical patent/CN106887982A/zh
Application granted granted Critical
Publication of CN106887982B publication Critical patent/CN106887982B/zh
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Classifications

    • HELECTRICITY
    • H02GENERATION; CONVERSION OR DISTRIBUTION OF ELECTRIC POWER
    • H02PCONTROL OR REGULATION OF ELECTRIC MOTORS, ELECTRIC GENERATORS OR DYNAMO-ELECTRIC CONVERTERS; CONTROLLING TRANSFORMERS, REACTORS OR CHOKE COILS
    • H02P8/00Arrangements for controlling dynamo-electric motors rotating step by step
    • H02P8/14Arrangements for controlling speed or speed and torque

Landscapes

  • Engineering & Computer Science (AREA)
  • Power Engineering (AREA)
  • Control Of Stepping Motors (AREA)

Abstract

本发明实施例公开的一种基于FPGA的步进电机速度控制方法,涉及步进电机速度控制技术领域,能够实现在FPGA中使用单一控制结构对步进电机的速度进行控制。该方法计算目标角度值A1与当前角度值A0的步差绝对值X=|A1-A0|;当步差绝对值0<X≤M时,等待时间T后发出一次转动控制信号,然后X=X-1,若T<T1,则T=T+ΔT,若T≥T1,则T=T,当步差绝对值X>M时,等待时间T后发出一次转动控制信号,然后X=X-1,若T>T2,则T=T-ΔT,若T≤T2,则T=T,当X=0时,控制结束,转动停止,主要用于步进电机速度控制。

Description

一种基于FPGA的步进电机速度控制方法
技术领域
本发明涉及步进电机速度控制技术领域,尤其涉及一种基于FPGA的步进电机速度控制方法。
背景技术
为避免步进电机在转动过程中由于惯性作用发生失步现象,步进电机在开始转动时应当由低速逐渐加速至高速,在停止转动时应当逐渐减速停止。采用分支控制结构在FPGA中实现会占用较多的硬件资源,使用单一控制结构更加节省硬件资源,但是,目前现有技术没有实现在FPGA中使用单一控制结构对步进电机的速度进行控制。
发明内容
本发明的目的在于克服现有技术不足,提供了一种基于FPGA的步进电机速度控制方法,能够实现在FPGA中使用单一控制结构对步进电机的速度进行控制。
本发明的技术解决方案:
一方面,一种基于FPGA的步进电机速度控制方法,包括以下步骤:
步骤1、设定加减速阈值为M,最大步间隔为T1,最小步间隔为T2,实时步间隔T=T1,加速减速阶段的步间隔之差ΔT=(T1-T2)/M;
步骤2、接收目标角度值A1;
步骤3、计算目标角度值A1与当前角度值A0的步差绝对值X=|A1-A0|;
步骤4、当步差绝对值0<X≤M时,进入步骤5,当步差绝对值X>M时,进入步骤6,当X=0时,控制结束,转动停止;
步骤5、等待时间T后发出一次转动控制信号,然后X=X-1,若T<T1,则T=T+ΔT,若T≥T1,则T=T,进入步骤4;
步骤6、等待时间T后发出一次转动控制信号,然后X=X-1,若T>T2,则T=T-ΔT,若T≤T2,则T=T,进入步骤4。
进一步的,当转动总步数X大于2M时,步进电机会由最低速加速转动M步后达到最高速,然后以最高速匀速转动X-2M步后开始减速,减速转动M步后达到最低速,然后停止转动。
进一步的,当转动总步数X大于M,小于等于2M时,步进电机会由最低速加速转动X-M步后开始减速,减速转动X-M步后达到最低速,然后以最低速匀速转动2M-X步后停止转动。
进一步的,当转动总步数X小于等于M时,步进电机以最低速匀速转动X步后停止转动。
另一方面,一种用于步进电机速度控制的FPGA控制电路,该电路包含如下功能模块:
差值绝对值计算模块:用于计算目标角度与当前角度的步数差值绝对值;
阈值比较模块:用于比较当前步差与阈值,从而决定加速、减速、保持当前速度或停止;
步间计时模块:用于根据步间距计时控制电机转动信号输出。
本发明实施例提供的一种基于FPGA的步进电机速度控制方法,采用FPGA对步进电机进行速度控制,使用单一控制结构,资源占用量少,而且能够根据转动步数的不同改变速度控制策略。
附图说明
所包括的附图用来提供对本发明实施例的进一步的理解,其构成了说明书的一部分,用于例示本发明的实施例,并与文字描述一起来阐释本发明的原理。显而易见地,下面描述中的附图仅仅是本发明的一些实施例,对于本领域普通技术人员来讲,在不付出创造性劳动的前提下,还可以根据这些附图获得其他的附图。
图1为本发明实施例提供的一种基于FPGA的步进电机速度控制方法的流程图;
图2、图3、图4为本发明实施例中步进电机转动步数不同时的速度规划曲线;
图5为本发明实施例中FPGA硬件实现框图。
具体实施方式
下面将结合附图对本发明的具体实施例进行详细说明。在下面的描述中,出于解释而非限制性的目的,阐述了具体细节,以帮助全面地理解本发明。然而,对本领域技术人员来说显而易见的是,也可以在脱离了这些具体细节的其它实施例中实践本发明。
在此需要说明的是,为了避免因不必要的细节而模糊了本发明,在附图中仅仅示出了与根据本发明的方案密切相关的设备结构和/或处理步骤,而省略了与本发明关系不大的其他细节。
本发明实施例提供一种基于FPGA的步进电机速度控制方法,如图1所示,包括以下步骤:
101、设定加减速阈值为M,最大步间隔为T1,最小步间隔为T2,实时步间隔T=T1,加速减速阶段的步间隔之差ΔT=(T1-T2)/M;
102、接收目标角度值A1;
103、计算目标角度值A1与当前角度值A0的步差绝对值X=|A1-A0|;
104、判断当步差绝对值与M关系,当步差绝对值0<X≤M时,进入步骤105,当步差绝对值X>M时,进入步骤106,当X=0时,控制结束,转动停止;
105、等待时间T后发出一次转动控制信号,然后X=X-1,若T<T1,则T=T+ΔT,若T≥T1,则T=T,进入步骤104;
106、等待时间T后发出一次转动控制信号,然后X=X-1,若T>T2,则T=T-ΔT,若T≤T2,则T=T,进入步骤104。
进一步的,如图2、所示,当转动总步数X大于2M时,步进电机会由最低速加速转动M步后达到最高速,然后以最高速匀速转动X-2M步后开始减速,减速转动M步后达到最低速,然后停止转动。
进一步的,如图3所示,当转动总步数X大于M,小于等于2M时,步进电机会由最低速加速转动X-M步后开始减速,减速转动X-M步后达到最低速,然后以最低速匀速转动2M-X步后停止转动。
进一步的,如图4所示、当转动总步数X小于等于M时,步进电机以最低速匀速转动X步后停止转动。
本发明实施例提供的一种基于FPGA的步进电机速度控制方法,采用FPGA对步进电机进行速度控制,使用单一控制结构,资源占用量少,而且能够根据转动步数的不同改变速度控制策略。
为了实现上述方法,本发明实施例提供一种用于步进电机速度控制的FPGA控制电路,如图5所示,该电路包含如下功能模块:
差值绝对值计算模块:用于计算目标角度与当前角度的步数差值绝对值;
阈值比较模块:用于比较当前步差与阈值,从而决定加速、减速、保持当前速度或停止;
步间计时模块:用于根据步间距计时控制电机转动信号输出。
例如,设置加减速阈值M=4步,最大步差为T1=32us,最小步差T2=16us,当转动10步时,电机加减速情况如下:
当转动8步时,电机加减速情况如下:
步计数 8 7 6 5 4 3
步间隔 32us 28us 24us 20us 16us 20us 24us
步计数 2 1 0
步间隔 28us 32us
当转动7步时,电机加减速情况如下:
步计数 7 6 5 4 3 2
步间隔 32us 28us 24us 20us 24us 28us 32us
步计数 1 0
步间隔 32us
当转动4步时,电机加减速情况如下:
步计数 4 3 2 1 0
步间隔 32us 32us 32us 32us 32us
如上针对一种实施例描述和/或示出的特征可以以相同或类似的方式在一个或更多个其它实施例中使用,和/或与其它实施例中的特征相结合或替代其它实施例中的特征使用。
应该强调,术语“包括/包含”在本文使用时指特征、整件、步骤或组件的存在,但并不排除一个或更多个其它特征、整件、步骤、组件或其组合的存在或附加。
这些实施例的许多特征和优点根据该详细描述是清楚的,因此所附权利要求旨在覆盖这些实施例的落入其真实精神和范围内的所有这些特征和优点。此外,由于本领域的技术人员容易想到很多修改和改变,因此不是要将本发明的实施例限于所例示和描述的精确结构和操作,而是可以涵盖落入其范围内的所有合适修改和等同物。
本发明未详细说明部分为本领域技术人员公知技术。

Claims (4)

1.一种基于FPGA的步进电机速度控制方法,其特征在于,包括以下步骤:
步骤1、设定加减速阈值为M,最大步间隔为T1,最小步间隔为T2,实时步间隔T=T1,加速减速阶段的步间隔之差ΔT=(T1-T2)/M;
步骤2、接收目标角度值A1;
步骤3、计算目标角度值A1与当前角度值A0的步差绝对值X=|A1-A0|;
步骤4、当步差绝对值0<X≤M时,进入步骤5,当步差绝对值X>M时,进入步骤6,当X=0时,控制结束,转动停止;
步骤5、等待时间T后发出一次转动控制信号,然后X=X-1,若T<T1,则T=T+ΔT,若T≥T1,则T=T,进入步骤4;
步骤6、等待时间T后发出一次转动控制信号,然后X=X-1,若T>T2,则T=T-ΔT,若T≤T2,则T=T,进入步骤4。
2.根据权利要求1所述的方法,其特征在于,当转动总步数X大于2M时,步进电机会由最低速加速转动M步后达到最高速,然后以最高速匀速转动X-2M步后开始减速,减速转动M步后达到最低速,然后停止转动。
3.根据权利要求2所述的方法,其特征在于,当转动总步数X大于M,小于等于2M时,步进电机会由最低速加速转动X-M步后开始减速,减速转动X-M步后达到最低速,然后以最低速匀速转动2M-X步后停止转动。
4.根据权利要求3所述的方法,其特征在于,当转动总步数X小于等于M时,步进电机以最低速匀速转动X步后停止转动。
CN201510939836.2A 2015-12-15 2015-12-15 一种基于fpga的步进电机速度控制方法 Active CN106887982B (zh)

Priority Applications (1)

Application Number Priority Date Filing Date Title
CN201510939836.2A CN106887982B (zh) 2015-12-15 2015-12-15 一种基于fpga的步进电机速度控制方法

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CN201510939836.2A CN106887982B (zh) 2015-12-15 2015-12-15 一种基于fpga的步进电机速度控制方法

Publications (2)

Publication Number Publication Date
CN106887982A CN106887982A (zh) 2017-06-23
CN106887982B true CN106887982B (zh) 2019-01-22

Family

ID=59173978

Family Applications (1)

Application Number Title Priority Date Filing Date
CN201510939836.2A Active CN106887982B (zh) 2015-12-15 2015-12-15 一种基于fpga的步进电机速度控制方法

Country Status (1)

Country Link
CN (1) CN106887982B (zh)

Families Citing this family (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN107544573B (zh) * 2017-08-29 2021-01-01 深圳怡化电脑股份有限公司 步进电机驱动的控制方法及系统
CN109687782B (zh) * 2019-01-08 2021-06-04 蓝怡科技集团股份有限公司 一种步进电机的控制装置和控制系统
CN110995083B (zh) * 2019-12-20 2023-01-06 湖南航天机电设备与特种材料研究所 一种用于三自惯组产品的高可靠锁紧控制方法及控制系统

Citations (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN101373947A (zh) * 2007-08-22 2009-02-25 比亚迪股份有限公司 一种步进电机速度的控制方法、装置及系统
CN102843084A (zh) * 2012-09-11 2012-12-26 济南优耐特汽车电子有限公司 一种步进电机的加减速驱动方法
JP2014176171A (ja) * 2013-03-07 2014-09-22 Hitachi High-Technologies Corp パルスモータ制御装置
CN104660127A (zh) * 2014-12-04 2015-05-27 重庆谱思机器人控制系统有限公司 一种步进电机控制器及其控制方法
CN104753415A (zh) * 2013-12-31 2015-07-01 深圳迈瑞生物医疗电子股份有限公司 步进电机的启停控制方法、系统和步进电机

Patent Citations (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN101373947A (zh) * 2007-08-22 2009-02-25 比亚迪股份有限公司 一种步进电机速度的控制方法、装置及系统
CN102843084A (zh) * 2012-09-11 2012-12-26 济南优耐特汽车电子有限公司 一种步进电机的加减速驱动方法
JP2014176171A (ja) * 2013-03-07 2014-09-22 Hitachi High-Technologies Corp パルスモータ制御装置
CN104753415A (zh) * 2013-12-31 2015-07-01 深圳迈瑞生物医疗电子股份有限公司 步进电机的启停控制方法、系统和步进电机
CN104660127A (zh) * 2014-12-04 2015-05-27 重庆谱思机器人控制系统有限公司 一种步进电机控制器及其控制方法

Also Published As

Publication number Publication date
CN106887982A (zh) 2017-06-23

Similar Documents

Publication Publication Date Title
CN106887982B (zh) 一种基于fpga的步进电机速度控制方法
CN105564431B (zh) 控制混合动力车的滑行运行的方法及执行该方法的装置
CN107850887B (zh) S型曲线规划方法、装置及数控机床
US9979342B2 (en) Switch reluctance motor wide speed-regulation range cross-control method
US11396312B2 (en) Train overspeed protection method and apparatus
EP3088240B1 (en) Driving curve creation device, driving assistance device, driving control device, and driving curve creation method
CN104554260B (zh) 用于在超速管控路段内控制速度的系统和装置
EP2789431A3 (en) Control system and control method
CN107070327B (zh) 一种步进电机控制方法及装置
CN105313881B (zh) 用于控制混合动力车的速度变化的方法和装置
CN106671995B (zh) 一种重载列车驾驶曲线建立方法及装置
CN112666995B (zh) 无人机的速度规划方法、装置、设备及存储介质
CN109484427A (zh) 一种列车制动方法和装置
CN109765888B (zh) 一种车辆控制方法、装置及系统
CN112918519B (zh) 二次短距离对标停车方法、列车控制系统及自动驾驶系统
CN110217235B (zh) 一种用于车辆起步的控制方法及控制系统
CN105955203A (zh) CANopen伺服系统中速度前馈和转矩前馈的处理方法
CN109510532A (zh) 一种步进电机的直线段梯形加减速控制算法
CN104580917A (zh) 一种快速自动聚焦方法及装置
KR20150025920A (ko) 친환경 차량의 모터 시스템 제어 장치 및 방법
CN112455436A (zh) 车辆减速控制方法及整车控制器
CN105270204B (zh) 用于驱动电动机的转矩控制装置和方法
EP4047466A3 (en) Host-storage system that includes a command queuing method and a method of adjusting the processing speed of multiple queues
CN106325222B (zh) 进行基于表形式数据的运行的数值控制装置
CN113401182A (zh) 列车运行控制方法、装置和存储介质

Legal Events

Date Code Title Description
PB01 Publication
PB01 Publication
SE01 Entry into force of request for substantive examination
SE01 Entry into force of request for substantive examination
GR01 Patent grant
GR01 Patent grant