CN102843084B - 一种步进电机的加减速驱动方法 - Google Patents

一种步进电机的加减速驱动方法 Download PDF

Info

Publication number
CN102843084B
CN102843084B CN201210334355.5A CN201210334355A CN102843084B CN 102843084 B CN102843084 B CN 102843084B CN 201210334355 A CN201210334355 A CN 201210334355A CN 102843084 B CN102843084 B CN 102843084B
Authority
CN
China
Prior art keywords
stepping motor
driving
interval
time
deceleration
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
CN201210334355.5A
Other languages
English (en)
Other versions
CN102843084A (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.)
JINAN UNIT AUTOMOBILE ELECTRONICS CO Ltd
Original Assignee
JINAN UNIT AUTOMOBILE ELECTRONICS CO Ltd
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 JINAN UNIT AUTOMOBILE ELECTRONICS CO Ltd filed Critical JINAN UNIT AUTOMOBILE ELECTRONICS CO Ltd
Priority to CN201210334355.5A priority Critical patent/CN102843084B/zh
Publication of CN102843084A publication Critical patent/CN102843084A/zh
Application granted granted Critical
Publication of CN102843084B publication Critical patent/CN102843084B/zh
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Landscapes

  • Control Of Stepping Motors (AREA)

Abstract

一种步进电机的加减速驱动方法,它包括以下过程:预设置步进电机步间时间间隔数据表;采集转速数据信息;根据转速数据信息更新目标转速数据;根据目标转速数据进行驱动步进电机。其中所述根据目标转速数据进行驱动步进电机的过程中,会根据当前位置到目标驱动位置的步间间隔大小采用相应驱动策略进行驱动步进电机。本发明通过采用分段驱动步进电机和其它驱动方式相结合的驱动策略,不仅能够解决汽车仪表中转速表需要快速响应汽车转速变化,而且能够保证无论转速变化大小步进电机指针都能够有很好的响应速度和整体平滑的运行效果,避免了出现抖动的现象,从而达到最佳的视觉效果,增强了用户体验。

Description

一种步进电机的加减速驱动方法
技术领域
本发明涉及一种电机驱动方法,具体地说是一种步进电机的加减速驱动方法,属于汽车仪表的步进电机驱动技术领域。 
背景技术
在汽车仪表的设计中,由步进电机驱动带有指针指示转速表的关键技术就是如何控制好步进电机的走步状态,以达到理想的视觉效果。现有技术主要是一些理论性的参数,比如梯形加减速法等。但是,在实际的处理过程中,尤其是对发动机转速表,这种高实时性要求的指针指示,就需要根据整个驱动数据的规律做好加减速的具体处理,尤其是在加减速过程中,加减速衔接的问题,因为如果处理不好,就会出现指针抖动的现象。 
发明内容
为克服上述现有技术存在的不足,本发明所要解决的技术问题在于提供了一种步进电机的加减速驱动方法,其不仅能够解决汽车仪表中转速表需要快速响应汽车转速变化的问题,而且还具有优秀的加减速效果,能够达到最佳的用户体验。 
本发明解决其技术问题所采取的技术方案是:一种步进电机的加减速驱动方法,其特征是,包括以下过程: 
预设置步进电机步间时间间隔数据表; 
采集转速数据信息; 
根据转速数据信息更新目标转速数据; 
根据目标转速数据进行驱动步进电机,所述根据目标转速数据进行驱动 步进电机的过程包括以下过程: 
预设置步进电机的最大转角角度以及每度转角所需步数,并计算步进电机的最大步数N,其中,N为正整数, 
设定两个步间间隔临界值X和Y,其中,0<X<Y<N, 
根据当前位置到目标驱动位置的步间间隔大小采用相应驱动策略, 
微步驱动步进电机, 
根据步进电机时间间隔数据表更新时间控制寄存器的控制时间间隔数据。 
进一步地,所述根据当前位置到目标驱动位置的步间间隔大小采用相应驱动策略的过程包括以下过程: 
当前位置到目标驱动位置的步间间隔小于X时采用分段驱动策略; 
当前位置到目标驱动位置的步间间隔大于Y时采用快速驱动策略; 
当前位置到目标驱动位置的步间间隔大于X且小于Y时,如果当前状态为减速阶段,则采用衔接速度进行减速驱动,否则进行快速加速驱动。 
进一步地,所述分段驱动策略为当前位置到目标驱动位置的步间间隔小于X时根据步进电机步间时间间隔数据表采用慢速加速或减速的驱动策略。 
进一步地,所述快速驱动策略为当前位置到目标驱动位置的步间间隔大于Y时,采用先快速加速驱动步进电机,当加速到最大速度时以最大速度继续驱动步进电机,当接近目标位置时减速驱动步进电机的驱动策略。 
进一步地,所述微步驱动步进电机的过程就是采用一步转动最小步进角的方法进行驱动步进电机。 
本发明的有益效果是,本发明通过采用分段驱动步进电机和其它驱动方式相结合的驱动策略,不仅能够解决汽车仪表中转速表需要快速响应汽车转速变化,而且能够保证无论转速变化大小步进电机指针都能够有很好的响应速度和整体平滑的运行效果,避免了出现抖动的现象,从而达到最佳的视觉 效果,增强了用户体验。 
附图说明
下面结合附图对本发明进一步说明: 
图1是本发明主程序流程图; 
图2是本发明具体实施例的驱动策略程序流程图; 
图3是图2所述分段驱动策略的流程图; 
图4是图2所述快速驱动和减速驱动策略的程序流程图。 
具体实施方式
图1是本发明主程序流程图。如图1所示,本发明的一种步进电机的加减速驱动方法,包括以下步骤: 
步骤101,预设置步进电机步间时间间隔数据表,并将数据表数据存入数据缓存区。 
步骤102,预设置步进电机的最大转角角度以及每度转角所需步数,并计算步进电机的最大步数N,其中,N为正整数。 
步骤103,设定两个步间间隔临界值X和Y,其中,0<X<Y<N。 
步骤104,采集步进电机的转速数据信息。 
步骤105,根据采集的步进电机转速数据信息更新目标转速数据; 
步骤106,判断当前位置到目标驱动位置的步间间隔是否小于X,如果是则转入步骤107;否则进入步骤108。 
步骤107,执行分段驱动策略并转入步骤111;所述分段驱动策略为当前位置到目标驱动位置的步间间隔小于X时根据步进电机步间时间间隔数据表采用慢速加速或减速驱动步进电机的驱动策略。 
步骤108,判断当前位置到目标驱动位置的步间间隔是否大于Y,如果是则转入步骤109;否则进入步骤110。 
步骤109,执行快速驱动策略并转入步骤111;所述快速驱动策略为当前 位置到目标驱动位置的步间间隔大于Y时,采用先快速加速驱动步进电机,当加速到最大速度时以最大速度继续驱动步进电机,当接近目标位置时减速驱动步进电机的驱动策略。 
步骤110,当前位置到目标驱动位置的步间间隔在X到Y之间时,如果当前状态为减速阶段,则采用衔接速度进行减速驱动,否则转至109进行快速加速驱动,之后转入步骤111。 
步骤111,进行微步驱动步进电机,所述微步驱动步进电机就是采用一步转动最小步进角的方法进行驱动步进电机。 
步骤112,判断当前位置是否到达目标驱动位置,如果当前位置没有到达目标驱动位置则进入步骤113;如果当前位置到达目标驱动位置则转入步骤104。 
步骤113,根据步进电机时间间隔数据表更新时间控制寄存器的控制时间间隔数据,并转入步骤106继续进行驱动,直至步进电机指针的当前位置到达目标驱动位置。 
下面通过具体实施例对本发明做进一步阐述: 
在该具体实施例中,设定步进电机的最大转角角度为270度,每度12步,则步进电机的总步数共3240步,设定两个步间间隔临界值X和Y分别为240步和320步,步进电机步间时间间隔数据表见附表。 
图2是本发明具体实施例的驱动策略程序流程图。如图2所示,所述驱动策略具体包括以下步骤: 
步骤201,工作开始。 
步骤202,根据当前位置到目标驱动位置的驱动步长间隔选择不同的驱动策略,如果当前位置到目标驱动位置的步间间隔小于240步,则转入步骤203;如果当前位置到目标驱动位置的步间间隔在240步到320步之间,如果处于降速过程则根据衔接速度减速驱动,否则进入步骤204;如果当前位置到目标 驱动位置的步间间隔大于320步则进入步骤207。 
步骤203,执行分段驱动策略进行驱动步进电机。 
步骤204,执行快速驱动策略进行驱动步进电机。 
步骤205,是否进行快速减速,如果是则进入步骤206,否则转入步骤208。 
步骤206,进行快速减速驱动步进电机。 
步骤207,执行步骤208、209和210三种方式的快速驱动策略进行驱动步进电机。 
步骤208,快速加速驱动步进电机。 
步骤209,匀速驱动步进电机。 
步骤210,减速驱动步进电机。 
步骤211,进行微步驱动步进电机,所述微步驱动步进电机就是以一步(1/12度)的步间间隔进行驱动步进电机。 
步骤212,判断当前位置是否到达目标驱动位置,如果当前位置没有到达目标驱动位置则转入步骤202;如果当前位置到达目标驱动位置则进入步骤213。 
步骤213,驱动工作结束。 
图3是图2所述分段驱动策略的流程图。如图3所示,当前位置到目标驱动位置的步间间隔小于240步时,所采取的分段驱动策略如下: 
(1)当前位置到目标驱动位置的步间间隔小于20步时,把步进电机步间时间间隔数据表中H1L1对应数据赋给时间控制寄存器,即以第1个缓存数据进行驱动步进电机; 
(2)当前位置到目标驱动位置的步间间隔小于40步时,把步进电机步间时间间隔数据表中H2L1对应数据赋给时间控制寄存器,即以第2个缓存数据进行驱动步进电机; 
(3)当前位置到目标驱动位置的步间间隔小于50步时,把步进电机步 间时间间隔数据表中H3L1对应数据赋给时间控制寄存器,即以第3个缓存数据进行驱动步进电机; 
(4)当前位置到目标驱动位置的步间间隔小于60步时,把步进电机步间时间间隔数据表中H4L1对应数据赋给时间控制寄存器,即以第4个缓存数据进行驱动步进电机; 
(5)当前位置到目标驱动位置的步间间隔小于80步时,把步进电机步间时间间隔数据表中H5L1对应数据赋给时间控制寄存器,即以第5个缓存数据进行驱动步进电机; 
(6)当前位置到目标驱动位置的步间间隔小于90步时,把步进电机步间时间间隔数据表中H1L4对应数据赋给时间控制寄存器,即以第21个缓存数据进行驱动步进电机; 
(7)当前位置到目标驱动位置的步间间隔小于100步时,把步进电机步间时间间隔数据表中H4L5对应数据赋给时间控制寄存器,即以第31个缓存数据进行驱动步进电机; 
(8)当前位置到目标驱动位置的步间间隔小于150步时,把步进电机步间时间间隔数据表中H7L6对应数据赋给时间控制寄存器,即以第41个缓存数据进行驱动步进电机; 
(9)当前位置到目标驱动位置的步间间隔小于180步时,把步进电机步间时间间隔数据表中H3L8对应数据赋给时间控制寄存器,即以第51个缓存数据进行驱动步进电机; 
(10)当前位置到目标驱动位置的步间间隔小于200步时,把步进电机步间时间间隔数据表中H6L9对应数据赋给时间控制寄存器,即以第61个缓存数据进行驱动步进电机; 
(11)当前位置到目标驱动位置的步间间隔小于240步时,把步进电机步间时间间隔数据表中H3L10对应数据赋给时间控制寄存器,即以第65个缓 存数据进行驱动步进电机。 
图4是图2所述快速驱动和减速驱动策略的程序流程图。如图4所示,所述快速驱动和减速驱动策略流程包括以下步骤: 
步骤301,当前位置到目标驱动位置的步间间隔大于320步时则执行分段驱动策略进行驱动步进电机。 
步骤302,设置降速时的低速衔接速度值。 
步骤303,初始化加速驱动的缓冲数据为步进电机步间时间间隔数据表中第1个数据(H1L1对应数据),然后以步骤304、306和308中的一种或者驱动方式进行驱动步进电机。 
步骤304,快速加速驱动步进电机。步进电机要加速转动以跟上实际转速数据变化,把下面的时间间隔数据在每次驱动后轮流赋给时间控制寄存器,随着时间间隔数据不断变小,当到达1900/2+0的时候,步进电机到达了设定的最大速度。 
步骤305,对缓存区的时间间隔数据按照先行后列的顺序,把缓冲数据作为微步驱动的时间间隔。 
步骤306,匀速驱动步进电机。如果还需要指针快速指示数值,那么步进电机保持最大速度转动运行。 
步骤307,保持最后一个缓存数据作为驱动间隔(最高速)。 
步骤308,减速驱动步进电机。当步间间隔减小到一定数值的时候,要减速;把延时数据按照与加速过程相反的方向,把缓存区数据赋给时间控制寄存器,步进电机就会平稳减速运行; 
步骤309,连续减小缓冲数据到接近设置的低速衔接速度值。 
步骤310,当前位置到目标驱动位置的步间间隔在240步到320步之间时,如果当前状态为减速阶段,则采用衔接速度进行减速驱动,否则转至304进行快速加速驱动。 
步骤311,根据当前驱动状态是否处在降速阶段来驱动步进电机,如果处在降速阶段则进入步骤312,否则转入步骤304。 
步骤312,以设置好的衔接速度来驱动步进电机。 
步骤313,进行微步驱动步进电机,所述微步驱动步进电机就是以一步(1/12度)的步间间隔进行驱动步进电机。 
附表: 
附表说明:缓存数据的排列顺序为H1L1、H2L1...H6L1,H1L2、H2L2...H7L2,...........随着数值的减小,步进电机驱动转动速度就会加快,相反,如果以相反的顺序,把数据赋值给时间控制寄存器,步进电机就会减速转动。 

Claims (4)

1.一种步进电机的加减速驱动方法,其特征是,包括以下过程:
预设置步进电机步间时间间隔数据表;
采集转速数据信息;
根据转速数据信息更新目标转速数据;
根据目标转速数据进行驱动步进电机,所述根据目标转速数据进行驱动步进电机的过程包括以下过程:
预设置步进电机的最大转角角度以及每度转角所需步数,并计算步进电机的最大步数N,其中,N为正整数,
设定两个步间间隔临界值X和Y,其中,0<X<Y<N,
根据当前位置到目标驱动位置的步间间隔大小采用相应驱动策略,当前位置到目标驱动位置的步间间隔小于X时采用分段驱动策略,当前位置到目标驱动位置的步间间隔大于Y时采用快速驱动策略,当前位置到目标驱动位置的步间间隔大于X且小于Y时,如果当前状态为减速阶段,则根据步进电机步间时间间隔数据表采用衔接速度进行减速驱动,否则进行快速加速驱动, 
微步驱动步进电机,
根据步进电机时间间隔数据表更新时间控制寄存器的控制时间间隔数据。
2.根据权利要求1所述的一种步进电机的加减速驱动方法,其特征是,所述分段驱动策略为当前位置到目标驱动位置的步间间隔小于X时根据步进电机步间时间间隔数据表采用慢速加速或减速的驱动策略。
3.根据权利要求1所述的一种步进电机的加减速驱动方法,其特征是,所述快速驱动策略为当前位置到目标驱动位置的步间间隔大于Y时,采用先快速加速驱动步进电机,当加速到最大速度时以最大速度继续驱动步进电机,当接近目标位置时减速驱动步进电机的驱动策略。
4.根据权利要求1所述的一种步进电机的加减速驱动方法,其特征是,所述微步驱动步进电机的过程就是采用一步转动最小步进角的方法进行驱动步进电机。
CN201210334355.5A 2012-09-11 2012-09-11 一种步进电机的加减速驱动方法 Active CN102843084B (zh)

Priority Applications (1)

Application Number Priority Date Filing Date Title
CN201210334355.5A CN102843084B (zh) 2012-09-11 2012-09-11 一种步进电机的加减速驱动方法

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CN201210334355.5A CN102843084B (zh) 2012-09-11 2012-09-11 一种步进电机的加减速驱动方法

Publications (2)

Publication Number Publication Date
CN102843084A CN102843084A (zh) 2012-12-26
CN102843084B true CN102843084B (zh) 2015-02-18

Family

ID=47370197

Family Applications (1)

Application Number Title Priority Date Filing Date
CN201210334355.5A Active CN102843084B (zh) 2012-09-11 2012-09-11 一种步进电机的加减速驱动方法

Country Status (1)

Country Link
CN (1) CN102843084B (zh)

Families Citing this family (8)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN104426442A (zh) * 2013-08-27 2015-03-18 昂纳信息技术(深圳)有限公司 带负载状态下的步进电机的速度调节方法
CN106887982B (zh) * 2015-12-15 2019-01-22 北京京航计算通讯研究所 一种基于fpga的步进电机速度控制方法
CN106222859B (zh) * 2016-08-31 2017-10-03 苍南县华仲机电有限公司 圆织机用直流变频电机分段启动加速控制方法
CN106341063B (zh) * 2016-09-09 2018-09-21 奇瑞汽车股份有限公司 步进电机加减速控制方法
CN107229016A (zh) * 2017-08-07 2017-10-03 珠海格力电器股份有限公司 一种电机参数更新方法和系统
CN108051608B (zh) * 2017-12-06 2020-09-18 大陆汽车车身电子系统(芜湖)有限公司 一种发动机怠速时显示发动机转速的方法
CN110729927B (zh) * 2019-10-23 2021-11-09 东风电子科技股份有限公司 实现led指示灯与步进电机同步控制的系统及其方法
CN112422001B (zh) * 2020-10-16 2021-07-23 珠海市奥德维科技有限公司 步进电机驱动方法

Citations (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN101373947A (zh) * 2007-08-22 2009-02-25 比亚迪股份有限公司 一种步进电机速度的控制方法、装置及系统
CN101471620A (zh) * 2007-12-27 2009-07-01 康奈可关精株式会社 步进电动机控制装置以及步进电动机的驱动控制方法
CN101635551A (zh) * 2008-07-22 2010-01-27 上海德科电子仪表有限公司 无齿轮步进电机在仪表应用上的控制方法

Family Cites Families (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP4541071B2 (ja) * 2004-08-25 2010-09-08 カルソニックカンセイ株式会社 指示計器および初期化駆動装置
JP4497105B2 (ja) * 2006-02-24 2010-07-07 株式会社デンソー 計器装置

Patent Citations (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN101373947A (zh) * 2007-08-22 2009-02-25 比亚迪股份有限公司 一种步进电机速度的控制方法、装置及系统
CN101471620A (zh) * 2007-12-27 2009-07-01 康奈可关精株式会社 步进电动机控制装置以及步进电动机的驱动控制方法
CN101635551A (zh) * 2008-07-22 2010-01-27 上海德科电子仪表有限公司 无齿轮步进电机在仪表应用上的控制方法

Also Published As

Publication number Publication date
CN102843084A (zh) 2012-12-26

Similar Documents

Publication Publication Date Title
CN102843084B (zh) 一种步进电机的加减速驱动方法
CN101699763B (zh) 交流永磁同步电机伺服系统的转动惯量辨识方法
CN104442822B (zh) 电动汽车用电机‑变速器集成驱动系统的自动换挡控制方法
CN101373947B (zh) 一种步进电机速度的控制方法、装置及系统
CN101865043B (zh) 动力传动系统的发动机转速控制装置
CN110014868A (zh) 三电机汽车动力系统及其控制方法和装置
CN106444645A (zh) 一种基于嵌入式裁床控制器的多轴联动运动控制方法
US8339400B2 (en) Graphic display meter
CN105179682B (zh) 一种两挡变速车辆的换挡控制方法及系统
CN111727411B (zh) 设备运动控制方法、设备和存储装置
CN106292727A (zh) 一种通过网络键盘摇杆控制云台转动的方法及装置
CN108319300A (zh) 执行机构的运行控制方法及装置
CN109510532A (zh) 一种步进电机的直线段梯形加减速控制算法
CN101699764A (zh) 交流永磁同步电机伺服系统的转动惯量辨识器
CN105656382B (zh) 一种电机转速定速控制方法及装置
CN105333032B (zh) 离合器接合控制方法和系统
CN106647838B (zh) 一种位置闭环控制方法及装置
CN103246236B (zh) 一种考虑小直线段和连接点速度的数控系统速度控制方法
CN114063568B (zh) 基于三次卷积插值实现数控系统倍率调整控制的方法、装置、处理器及计算机可读存储介质
CN114803866B (zh) 面向智能塔吊起升运动状态的分阶段优化控制方法及装置
WO2022089528A1 (zh) 主动发声系统的虚拟发动机转速控制方法及主动发声系统
CN109343589A (zh) 用于机器人的速度平滑方法及装置
CN111090972A (zh) 一种使用MATLAB软件绘制电机效率map图的方法
CN104126163B (zh) 机动车的显示装置以及用于运行显示装置的方法
CN103246237B (zh) 基于局部结束点的数控系统速度控制方法

Legal Events

Date Code Title Description
C06 Publication
PB01 Publication
C10 Entry into substantive examination
SE01 Entry into force of request for substantive examination
C14 Grant of patent or utility model
GR01 Patent grant