CN109687782B - 一种步进电机的控制装置和控制系统 - Google Patents
一种步进电机的控制装置和控制系统 Download PDFInfo
- Publication number
- CN109687782B CN109687782B CN201910015183.7A CN201910015183A CN109687782B CN 109687782 B CN109687782 B CN 109687782B CN 201910015183 A CN201910015183 A CN 201910015183A CN 109687782 B CN109687782 B CN 109687782B
- Authority
- CN
- China
- Prior art keywords
- step number
- stepping motor
- deceleration
- speed
- calibration
- 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
Links
- 238000012544 monitoring process Methods 0.000 claims abstract description 34
- 230000001960 triggered effect Effects 0.000 claims description 30
- 230000001133 acceleration Effects 0.000 claims description 28
- 238000003708 edge detection Methods 0.000 claims description 8
- 230000009467 reduction Effects 0.000 claims description 6
- 230000009191 jumping Effects 0.000 claims description 2
- 239000007788 liquid Substances 0.000 description 20
- 238000000034 method Methods 0.000 description 18
- 230000008569 process Effects 0.000 description 9
- 238000001514 detection method Methods 0.000 description 8
- 230000003287 optical effect Effects 0.000 description 8
- 238000010586 diagram Methods 0.000 description 6
- 230000008859 change Effects 0.000 description 3
- 238000011217 control strategy Methods 0.000 description 2
- 238000001208 nuclear magnetic resonance pulse sequence Methods 0.000 description 2
- 230000000630 rising effect Effects 0.000 description 2
- 230000007704 transition Effects 0.000 description 2
- 230000002159 abnormal effect Effects 0.000 description 1
- 238000009825 accumulation Methods 0.000 description 1
- 230000004913 activation Effects 0.000 description 1
- 230000007547 defect Effects 0.000 description 1
- 238000006073 displacement reaction Methods 0.000 description 1
- 238000012423 maintenance Methods 0.000 description 1
- 230000007257 malfunction Effects 0.000 description 1
- 230000008707 rearrangement Effects 0.000 description 1
- 239000000523 sample Substances 0.000 description 1
- 238000006467 substitution reaction Methods 0.000 description 1
Images
Classifications
-
- H—ELECTRICITY
- H02—GENERATION; CONVERSION OR DISTRIBUTION OF ELECTRIC POWER
- H02P—CONTROL OR REGULATION OF ELECTRIC MOTORS, ELECTRIC GENERATORS OR DYNAMO-ELECTRIC CONVERTERS; CONTROLLING TRANSFORMERS, REACTORS OR CHOKE COILS
- H02P8/00—Arrangements for controlling dynamo-electric motors rotating step by step
- H02P8/22—Control of step size; Intermediate stepping, e.g. microstepping
Landscapes
- Engineering & Computer Science (AREA)
- Power Engineering (AREA)
- Control Of Stepping Motors (AREA)
Abstract
本发明公开了一种步进电机的控制装置和控制系统。所述步进电机的控制装置包括FPGA芯片,所述FPGA芯片包括至少一个控制模块,所述控制模块包括:步数监控子模块,用于监控当前步进电机的运行步数;控制子模块,与所述步数监控子模块连接,用于根据所述运行步数和预设参数对所述步进电机进行控制。利用该步进电机的控制装置能够在降低成本的基础上,实现对步进电机地精准控制。
Description
技术领域
本发明实施例涉及控制技术领域,尤其涉及一种步进电机的控制装置和控制系统。
背景技术
步进电机是一种将数字脉冲转换为相应位移增量的电磁机械。步进电机常见的控制方法是采用单片机结合步进电机控制器的方法进行控制。
然而,现有通过单片机结合步进电机控制器控制步进电机时存在以下缺点:若采用开环控制,则定位精度难以保证;若采用闭环方式需要采用价格高昂的编码器对步进电机进行步数反馈和校准。
发明内容
本发明实施例提供了一种步进电机的控制装置和控制系统,以在降低成本的基础上,实现对步进电机地精准控制。
第一方面,本发明实施例提供了一种步进电机的控制装置,所述步进电机的控制装置包括FPGA芯片,所述FPGA芯片包括至少一个控制模块,所述控制模块包括:
步数监控子模块,用于监控当前步进电机的运行步数;
控制子模块,与所述步数监控子模块连接,用于根据所述运行步数和预设参数对所述步进电机进行控制。
可选的,所述预设参数包括预设校准步数和预设的目标步数;相应的,所述控制子模块,包括:校准控制单元和减速控制单元;
所述校准控制单元,用于在校准功能被触发时,根据所述运行步数和预设校准步数对所述步进电机进行校准控制;
所述减速控制单元,用于在减速功能被触发时,根据所述运行步数和预设的目标步数对所述步进电机进行减速控制。
可选的,所述校准控制单元,具体用于:
在校准功能被触发时,将所述运行步数修正为所述预设校准步数,所述校准功能被触发包括所述校准控制单元接收到校准触发信号和校准使能信号。
可选的,所述减速控制单元,具体用于:
在减速功能被触发时,根据所述运行步数和预设的目标步数确定剩余步数;
若所述剩余步数小于或等于减速阈值,则根据预设的第一减速曲线控制所述步进电机进行减速;
若所述剩余步数大于减速阈值且所述运行步数大于行进阈值,则根据当前运行步数对应的预先确定的第二减速曲线控制所述步进电机进行减速并根据所述减速阈值和运行步数修正目标步数;
其中,所述减速功能被触发包括所述减速控制单元接收到减速触发信号和减速使能信号。
可选的,步进电机的控制装置,还包括:
边沿检测子模块,分别与所述步数监控子模块和控制子模块连接,用于进行信号的跳变沿的检测,所述信号包括:电机启动信号、校准触发信号和减速触发信号。
可选的,步进电机的控制装置,所述预设参数包括:预设的目标步数和目标速度,相应的,所述控制子模块包括:
速度调节单元,用于根据所述运行步数、预设的目标步数和目标速度对所述步进电机进行速度调节。
可选的,所述速度调节单元,具体用于:
如果所述运行步数对应的速度小于目标速度且所述运行步数小于预设倍数的目标步数,则生成加速指令;
如果所述运行步数对应的速度小于目标速度且所述运行步数大于或等于预设倍数的目标步数,则生成减速指令;
如果所述运行步数等于目标速度且所述运行步数小于所述目标步数减去加速阶段步数,则生成匀速指令;
如果所述目标步数减去所述运行步数小于或等于预设的减速阶段步数,则生成减速指令。
可选的,步进电机的控制装置,还包括:
脉冲生成子模块,分别与所述步数监控子模块和控制子模块连接,用于根据预设的启动速度或所述运行步数对应的速度产生脉冲信号,以驱动所述步进电机。
可选的,步进电机的控制装置,还包括:
参数配置子模块,与所述控制子模块连接,用于配置所述步进电机的运行参数,所述运行参数包括启动速度、目标速度、目标步数、目标加速度、负载情况、速度对照表、校准使能和/或减速使能,其中,所述速度对照表为根据所述启动速度、目标速度、目标步数、目标加速度和负载情况生成的对照表,所述速度对照表包括第一减速曲线和第二减速曲线。
可选的,步进电机的控制装置,还包括:
故障报警子模块,分别与所述步数监控子模块和参数配置子模块连接,用于在接收到结束指令后,根据所述运行参数确定报警信号。
第二方面,本发明实施例还提供了一种步进电机的控制系统,其特征在于,包括:上位机和与所述上位机连接的本发明实施例所提供的步进电机的控制装置;
所述上位机,用于获取至少一个步进电机的运行参数,所述运行参数包括启动速度、目标速度、目标步数、目标加速度、速度对照表、校准使能和/或减速使能;
所述步进电机的控制装置,用于接收所述上位机发送的各所述运行参数,并基于所述运行参数对对应的步进电机进行控制。
本发明实施例提供了一种步进电机的控制装置和控制系统,该步进电机的控制装置包括FPGA芯片,所述FPGA芯片包括至少一个控制模块,所述控制模块包括:步数监控子模块,用于监控当前步进电机的运行步数;控制子模块,与所述步数监控子模块连接,用于根据所述运行步数和预设步数对所述步进电机进行控制。利用该步进电机的控制装置中一个控制模块可以控制一个步进电机,通过该步进电机的控制装置能够实现对至少一个步进电机进行控制,降低了现有技术中一个步进电机要配有一块单片机所带来的成本。此外,步进电机的控制装置中的控制子模块通过运行步数和预设步数能够实现对步进电机的精准控制,提高了用户的使用体验。
附图说明
图1为本发明实施例提供的一种步进电机的控制装置的结构示意图;
图2为本发明实施例提供的又一种步进电机的控制装置的结构示意图;
图3为本发明实施例三提供的另一种步进电机的控制装置的结构示意图。
具体实施方式
下面结合附图和实施例对本发明作进一步的详细说明。可以理解的是,此处所描述的具体实施例仅仅用于解释本发明,而非对本发明的限定。另外还需要说明的是,为了便于描述,附图中仅示出了与本发明相关的部分而非全部结构。
在更加详细地讨论示例性实施例之前应当提到的是,一些示例性实施例被描述成作为流程描绘的处理或方法。虽然流程将各项操作(或步骤)描述成顺序的处理,但是其中的许多操作可以被并行地、并发地或者同时实施。此外,各项操作的顺序可以被重新安排。当其操作完成时所述处理可以被终止,但是还可以具有未包括的附加步骤。所述处理可以对应于方法、函数、规程、子例程、子程序等等。
图1为本发明实施例提供的一种步进电机的控制装置的结构示意图,该步进电机的控制装置可适用于对步进电机进行控制的情况,具体地,该步进电机的控制装置可以适用于根据上位机发送的步进电机的运行参数,控制步进电机进行液面探测的情况。该步进电机的控制装置可由软件和/或硬件实现,并一般集成在终端设备上,在本实施例中终端设备包括但不限于:计算机或步进电机等设备。
如图1所示,本发明实施例提供的一种步进电机的控制装置,包括:FPGA芯片,所述FPGA芯片包括至少一个控制模块,所述控制模块包括:
步数监控子模块11,用于监控当前步进电机的运行步数;
控制子模块12,与步数监控子模块11连接,用于根据所述运行步数和预设步数对所述步进电机进行控制。
在本实施例中,步进电机的控制装置的工作过程可以为:步进电机的控制装置中所包括的FPGA芯片通过控制模块对步进电机进行驱动控制。一个控制模块可以对应一个步进电机,一个FPGA芯片包括的至少一个控制模块能够控制至少一个步进电机。具体地控制过程以一个控制模块控制一个步进电机为例进行说明:控制模块所包括的步数监控子模块11监测当前步进电机的运行步数,控制子模块12获取到步数监控子模块11所监控的运行步数后,可以根据运行步数和预设步数确定对步进电机的控制策略。具体地控制策略可以根据预设步数所包括的具体内容进行确定。
在本实施例中,步进电机的控制装置可以理解为对步进电机进行控制的装置。步进电机的控制装置所包括的其余内容不作限定,本领域技术人员可以根据需求进行设定。FPGA芯片可以理解为包括在步进电机的控制装置中的芯片。FPGA芯片可以由至少一个控制模块组成。控制模块可以理解为控制步进的模块,一个控制模块可以控制一个步进电机。步数监控子模块11可以理解为监测步进电机运行步数的子模块。运行步数可以理解为步进电机转动步数。控制子模块12可以理解为根据步进电机的运行步数和预设步数对步进电机进行控制的子模块,此处的控制可以包括直接控制,也可以包括间接控制。
预设参数可以理解为在对步进电机进行控制之前预先设定的参数,基于该预设参数能够对步进电机进行控制。不同的预设参数能够实现步进电机不同的控制。此处不对预设步数所包括的具体内容进行限定,本领域技术人员可以根据实际控制情况选取对应的内容作为预设参数。示例性地,预设参数可以包括预设校准步数、预设的目标步数和/或目标速度。其中,预设校准步数可以用于控制步进电机执行校准操作;目标步数可以用于控制步进电机执行减速操作;目标速度和目标步数能够用于控制步进电机进行速度调节操作。
此外,步数监控子模块11可以在每次检测到电机启动信号时清零步数寄存器。其中,电机启动信号可以为上位机发送至步进电机的控制装置。步数监控子模块11可以通过检测脉冲生成子模块生成的脉冲信号实现步数监控。
本发明实施例提供的一种步进电机的控制装置,该步进电机的控制装置包括FPGA芯片,所述FPGA芯片包括至少一个控制模块,所述控制模块包括:步数监控子模块,用于监控当前步进电机的运行步数;控制子模块,与所述步数监控子模块连接,用于根据所述运行步数和预设步数对所述步进电机进行控制。利用该步进电机的控制装置中一个控制模块可以控制一个步进电机,通过该步进电机的控制装置能够实现对至少一个步进电机进行控制,降低了现有技术中一个步进电机要配有一块单片机所带来的成本。此外,步进电机的控制装置中的控制子模块通过运行步数和预设步数能够实现对步进电机的精准控制,提高了用户的使用体验。
进一步地,图2为本发明实施例提供的又一种步进电机的控制装置的结构示意图;如图2所示,所述预设步数包括预设校准步数和预设的目标步数;相应的,控制子模块12,包括:校准控制单元121和减速控制单元122;
校准控制单元121,用于在校准功能被触发时,根据所述运行步数和预设校准步数对所述步进电机进行校准控制;
减速控制单元122,用于在减速功能被触发时,根据所述运行步数和预设的目标步数对所述步进电机进行减速控制。
其中,预设校准步数可以理解为预先设定的步进电机进行校准时的运行步数。目标步数可以理解为预先设定的步进电机在行进时所运行的总步数。校准控制单元121可以理解为控制子模块12中对步进电机进行校准的控制单元。减速控制单元122可以理解为控制子模块12中对步进电机进行减速控制的控制单元。
校准功能被触发可以理解为校准控制单元121被触发工作,此处不对校准功能被触发的具体方式进行限定,如校准功能被触发可以包括校准控制单元121接收到校准触发信号;还可以包括校准控制单元121接收到校准触发信号且接收到校准使能信号。该校准触发信号的产生方式不作限定,如可以通过外部光耦产生。校准使能信号的产生方式不作限定,可以由校准控制单元121判断其校准使能标志位是否满足开启条件生成。开启条件可以为根据实际情况进行设定,如设置校准使能标识位为1时,校准控制单元121可以接收到校准使能信号。
校准控制单元121在对步进电机进行校准控制时,可以根据步进电机当前的运行步数和预设校准步数进行比对,以确定当前步进电机是否存在丢步或过冲。
示例性地,如果运行步数与预设校准步数不相同,则可以认为当前步进电机存在丢步或过冲,则校准控制单元121可以基于预设校准步数修正运行步数;否则可以说明当前步进电机运行正常,可以不执行任何操作;此外,校准控制单元121在对步进电机进行校准控制时,也可以不比对运行步数和预设校准步数,直接基于预设校准步数修正运行步数。
减速功能被触发可以理解为减速控制单元122被触发工作,此处不对减速功能被触发的具体方式进行限定,如减速功能被触发可以包括减速控制单元122接收到减速触发信号;还可以包括减速控制单元122接收到减速触发信号且接收到减速使能信号。该减速触发信号的产生方式不作限定,如可以通过基于该减速控制单元122的应用场景进行确定。示例性的,若减速控制单元122应用于液面探测场景时,减速触发信号可以在检测到外部液面时产生。检测外部液面的具体方式不作限定,如可以通过超声探头检测。减速使能信号的产生方式不作限定,可以由减速控制单元122判断其减速使能标识位是否满足触发条件生成。触发条件可以根据实际情况进行设定,如设置减速使能标识位为1时,减速控制单元122可以接收到减速使能信号。
减速控制单元122在对步进电机进行减速控制时,可以根据步进电机具体的应用场景确定如何根据运行步数和预设的目标步数对步进电机进行减速控制,此处不作限定。该减速控制单元122可以认为是在步进电机接触到被作用物体时控制触发的单元。被作用物体可以根据应用场景确定,若步进电机应用于液面探测,则被作用物体为液体。在减速控制单元122减速功能被触发后,可以基于运行步数和预设的目标步数确定步进电机的减速策略。
进一步地,校准控制单元121,具体用于:
在校准功能被触发时,将所述运行步数修正为所述预设校准步数,所述校准功能被触发包括校准控制单元121接收到校准触发信号和校准使能信号。
具体地,校准控制单元121对步进电机进行校准控制时,当检测到校准功能被触发时,可以直接将运行步数修正为预设校准步数。
示例性地,若有光耦信号进入校准控制单元121且校准使能标识位为1,则可以认为当前校准控制单元121的校准功能被触发,相应的,校准控制单元121可以将运行步数修正为预设校准步骤,以消除步进电机在到达光耦之前因丢步或过冲产生的步数误差,实现在高速运行中自动校准。
光耦信号可以认为是校准触发信号,其可以由光耦产生,光耦和步进电机可以相对设置,用于标识步进电机进行校准的位置。当步进电机运行至光耦时,校准控制单元121可以获取到光耦信号,此处不对获取的手段进行限定,如可以获取光电传感器检测的数据。
进一步地,减速控制单元122,具体用于:
在减速功能被触发时,根据所述运行步数和预设的目标步数确定剩余步数;
若所述剩余步数小于或等于减速阈值,则根据预设的第一减速曲线控制所述步进电机进行减速;
若所述剩余步数大于减速阈值且所述运行步数大于行进阈值,则根据当前运行步数对应的预先确定的第二减速曲线控制所述步进电机进行减速并根据所述减速阈值和运行步数修正目标步数;
其中,所述减速功能被触发包括减速控制单元122接收到减速触发信号和减速使能信号。
其中,减速控制单元122可以认为是针对液面探测的减速单元。减速控制单元122可以由减速触发信号和减速使能信号触发工作。减速控制单元122在对步进电机进行减速控制时,可以首先基于运行步数和预设的目标步数确定出剩余步数。其中,剩余步数可以理解为当前步进电机需要继续运行的步数。
减速阈值可以理解为触发步进电机进行减速修正的阈值。当剩余步数小于或等于减速阈值时,可以直接基于预先设定的第一减速曲线控制步进电机进行减速。其中,第一减速曲线可以理解为预先设定的在剩余步数小于或等于减速阈值时所采用的减速曲线。该第一减速曲线的确定方式不作限定,可以由步进电机的控制装置基于步进电机的运行参数预先确定。可以理解的是,在根据预设的第一减速曲线控制步进电机进行减速时,可以基于当前运行步数对应的速度确定下一步步进电机的速度。
当剩余步数大于减速阈值时,可以进一步判断运行步数是否大于行进阈值,以确定当前步进电机是否需要进行减速。行进阈值可以理解为标识是否控制步进电机进行减速的阈值。当剩余步数大于减速阈值且所述运行步数大于行进阈值时,可以控制根据接触液面时的速度调用不同的减速曲线对步进电机进行控制,如根据当前的运行步数对应的第二减速曲线控制步进电机进行减速。其中,第二减速曲线可以为预先确定的在剩余步数大于减速阈值且运行步数大于行进阈值的情况下,运动步数对应的曲线。此外,减速控制单元122还可以将根据减速阈值和运行步骤修正目标步数,以保证步进电机准确进行液面探测。此处不对根据减速阈值和运行步骤修正目标步数的方式进行限定。
示例性的,减速控制单元122在应用于液面探测场景时,由于液面高度不定,液针接触到液面时的速度不固定,因此需根据接触到液面时的实际速度修改剩余步数的减速曲线,实现液针在高速下行的情况下稳定停止。工作流程可以为:有液面探测信号(即减速触发信号)进入减速控制单元122时,若减速使能标识位为1,则可以首先判断步进电机剩余步数是否大于100,若不大于100,则按当前减速曲线运行至结束。
其中,当前减速曲线为预先确定的在剩余步数不大于100时所采用的减速曲线;若剩余步数大于100,则判断运行步数是否大于1000,若不大于1000则不响应该信号;若运行步数大于1000,则根据接触液面时的速度调用不同的减速曲线,同时将目标步数修正为运行步数加上100。
进一步地,图3为本发明实施例三提供的另一种步进电机的控制装置的结构示意图;如图3所示,步进电机的控制装置,还包括:
边沿检测子模块13,分别与步数监控子模块11和控制子模块12连接,用于进行信号的跳变沿的检测,所述信号包括:电机启动信号、校准触发信号和减速触发信号。
边沿检测子模块13可以检测电机启动信号、校准触发信号和/或减速触发信号等特殊功能信号的边沿。工作流程可以为:每个时钟周期存储一次当前信号值;当连续两个周期存储的值发生变化时,认为存在跳变沿;根据最后存储信号的值来判断是上升沿还是下降沿。其中,电机启动信号、校准触发信号和减速触发信号可以为不同波形的信号,边沿检测子模块13可以基于产生跳变沿所需的周期确定各信号,此处仅为示例,不进行具体限定。
进一步地,所述预设参数包括:预设的目标步数和目标速度,相应的,控制子模块12包括:
速度调节单元,用于根据所述运行步数、预设的目标步数和目标速度对所述步进电机进行速度调节。
该速度调节单元可以用于在步进电机运行过程中,对步进电机进行速度调节。具体地,速度调节单元可以实时对步进电机的运行步数、预设的目标步数和目标速度进行分析,确定调节策略。
根据运行步数、预设的目标步数和目标速度对步进电机进行速度调节的手段不作限定。如,可以根据运行步数和目标步数确定当前电机行进的路程,再结合运行步数对应的速度和目标速度确定如何对步进电机进行速度调节。
进一步地,速度调节单元,具体用于:
如果所述运行步数对应的速度小于目标速度且所述运行步数小于预设倍数的目标步数,则生成加速指令;
如果所述运行步数对应的速度小于目标速度且所述运行步数大于或等于预设倍数的目标步数,则生成减速指令;
如果所述运行步数等于目标速度且所述运行步数小于所述目标步数减去加速阶段步数,则生成匀速指令;
如果所述目标步数减去所述运行步数小于或等于预设的减速阶段步数,则生成减速指令。
其中,预设倍数不作限定本领域技术人员可以根据步进电机的实际应用场景进行限定。加速指令可以理解为控制步进电机进行加速的指令。减速指令可以理解为控制步进电机进行减速的指令。匀速指令可以理解为控制步进电机保持匀速的指令。加速指令、减速指令和匀速指令的具体内容及对步进电机的控制方式,此处不作限定。如,该加速指令和减速指令可以改变输出至步进电机的脉冲波形对步进电机进行速度控制。
加速阶段步数和减速阶段步数可以为步进电机的控制装置预先确定的。如,由步进电机的控制装置的参数配置子模块确定。
需要注意的是,控制子模块12优化包括了速度调节单元,控制子模块12与边沿检测子模块13连接,相应的,速度调节单元与边沿检测子模块13连接,用于接收边沿检测子模块13检测到的电机启动信号。
示例性的,速度调节单元工作流程可以为:
1.每次检测到电机启动信号时,加速步数寄存器清零;
2.若当前速度(即运行步数对应的速度)小于目标速度,并且运行步数小于目标步数的一半,则执行加速,div_num<=speed_data[MOTION_STEP];
3.若当前速度小于目标速度,并且运行步数大于等于目标步数的一半,则执行减速,div_num<=speed_data[MOTION_STEP_ALL-MOTION_STEP];
4.若当前速度等于目标速度,并且已运行步数小于目标步数减去加速阶段步数,则执行匀速,div_num<=speed_data[NOW_STEP];
5.若剩余步数(即目标步数减去运行步数)小于等于减速阶段步数,则进入减速阶段。
进一步地,步进电机的控制装置,还包括:
脉冲生成子模块14,分别与步数监控子模块11和控制子模块12连接,用于根据预设的启动速度或所述运行步数对应的速度产生脉冲信号,以驱动所述步进电机。
启动速度可以为步进电机的控制装置预先设定的,如通过步进电机的控制装置预先配置的。在步进电机启动工作时,可以脉冲生成子模块14可以基于启动速度产生对应的脉冲信号对步进电机进行控制。在步进电机启动工作后,步进电机可以基于运行步数对应的速度产生对应的脉冲信号对步进电机进行控制。
其中,运行步数对应的速度可以为步进电机的控制装置预先确定的。运行步数对应的速度也可以结合速度调节单元确定出的加速指令、减速指令或匀速指令进行调节,此处不作限定。
脉冲信号可以为占空比为50%的脉冲信号。脉冲生成子模块14的工作流程可以为:若当前运行步数对应的速度为div_num,由公式baud_count>=((div_num/2)-1)判断baud_count是否满足。若不满足继续累加,若满足则脉冲信号翻转,驱动步进电机运行一步。
进一步地,步进电机的控制装置,还包括:
参数配置子模块15,与控制子模块12连接,用于配置所述步进电机的运行参数,所述运行参数包括启动速度、目标速度、目标步数、目标加速度、负载情况、速度对照表、校准使能和/或减速使能,其中,所述速度对照表为根据所述启动速度、目标速度、目标步数、目标加速度和负载情况生成的对照表,所述速度对照表包括第一减速曲线和第二减速曲线。
参数配置子模块15可以理解为步进电机的控制装置中用于对步进电机运行参数进行配置的子模块。运行参数可以理解为步进电机工作所需参数。启动速度可以理解为步进电机启动工作时的速度。目标速度可以理解为步进电机运行的最大速度。目标步数可以理解为步进电机运行的最大步数,如,步进电机要运行1000步。目标加速度可以理解为步进电机运行的最大加速度。负载情况可以理解为步进电机的负载信息,此处不对负载情况进行限定,本领域技术人员可以根据步进电机实际的应用场景限定负载情况。速度对照表可以理解为步进电机在运行过程中所需查找的工作表,基于该速度对照表能够确定步进电机速度,基于确定出的速度能够生成对应的脉冲信号,从而对步进电机进行控制。可以理解的是,步进电机各速度值均可以从该速度对照表中确定。
此外,参数配置子模块15配置的运行参数可以从上位机获取。
示例性的,上位机通过SPI总线将步进电机运行所需的上述参数发送给FPGA内部对应的存储地址。
参数配置子模块15工作流程可以为:
1.参数配置子模块15通过SPI总线子模块不断检测时钟信号;
2.当检测到时钟信号上升沿后,开始将SPI总线上的数据按位存入步进电机的控制装置的内部数据缓存寄存器中。
3.解析内部数据缓存寄存器中数据的地址位,将有效数据存入FPGA功能表对应地址,完成配置过程。表1示出了CPU写入FPGA的功能表。
表1CPU写FPGA功能表
进一步地,步进电机的控制装置,还包括:
故障报警子模块16,分别与步数监控子模块11和参数配置子模块15连接,用于在接收到结束指令后,根据所述运行参数确定报警信号。
结束指令可以理解为步进电机运动完成后生成的指令。此处不对结束指令生成的具体手段进行限定,如可以在步数监控子模块11监测到运行步数为目标步数时触发生成。故障报警子模块16可以为对步进电机的控制装置进行故障检测的子模块。故障报警子模块16可以运行参数确定报警信号。不同的运行参数可以对应不同的报警信号,此处不对报警信号的具体内容进行限定。
示例性的,故障报警子模块16的工作流程可以为:
1.故障报警子模块16接收到清零指令后,所有故障值清零,清零指令不作限定,清零指令的触发形式也不作限定,其可以触发故障报警子模块16将故障值清零;
2.故障报警子模块16通过检测到结束指令后得知电机运行结束后,若电机运行状态寄存器值不为0,则可以发出电机运行异常报警信号;
3.若电机运行结束后,检测到校准使能标识位的值不为0,则可以发出步进电机校准失败报警;
4.若电机运行结束后,检测到减速使能标识位的值不为0,则可以发出步进电机液面探测失败报警。
可以理解的是,本实施例中仅限定了步进电机的控制装置中各子模块间部分连接关系,本领域技术人员可以根据实际需求将需要进行通信的子模块建立连接。
本实施例提供的步进电机的控制装置可以为理解为基于FPGA的步进电机的控制方法。现有步进电机的控制方法多采用单片机结合步进电机控制器的方法进行控制,该种控制方法的缺点是:
1.由于步进电机多采用开环控制,定位精度难以保证,传统闭环方式采用价格高昂的编码器对步进电机进行步数反馈和零点校准,同时,步进电机在高速运行中紧急停止会产生过冲,例如在液面探测的典型应用中,传统的步进电机需要结合超声探头等元件提前得知液面位置,以留给步进电机充足的减速时间,机械结构复杂,控制繁琐,价格高昂,故障率高;
2.基本每个步进电机需要一块载有单片机的PCB或控制驱动一体的驱动器;导致空间占用率高,板卡数多,布线困难,不便于升级维护等问题。
本实施例提供的步进电机的控制装置,利用FPGA强大的并行能力,高精度的定时功能,实现单个FPGA芯片同时对数十个步进电机进行精准地逐步加减速控制,取代阶梯变速方式,做到更平稳的启停控制。
在对步进电机进行控制时,可以基于启动速度、最大速度、运行总步数、最大加速度、实际负载情况生成各类速度曲线数据表;根据电机当前已运行的步数和当前速度判断下一步的运行速度所对应速度表中的位置;利用FPGA分频模块生成脉冲序列驱动电机运行。
由于使用查表的方法生成脉冲序列,大大降低了FPGA资源的占用,因此一片中低端的FPGA芯片即可驱动几十台步进电机,并能使速度值在速度表内或速度表间任意跳跃,从而实现更复杂的速度曲线及特殊加减速动作。
此外,本实施例还提供了一种步进电机的控制系统,该步进电机的控制系统,包括:上位机和与所述上位机连接的如本实施例中所述的步进电机的控制装置;
所述上位机,用于获取至少一个步进电机的运行参数,所述运行参数包括启动速度、目标速度、目标步数、目标加速度、速度对照表、校准使能和/或减速使能;
所述步进电机的控制装置,用于接收所述上位机发送的各所述运行参数,并基于所述运行参数对对应的步进电机进行控制。
可以理解的是,上位机可以获取用于对步进电机进行控制的运行参数,然后发送至步进电机的控制装置,以供步进电机的控制装置对步进电机进行控制。
步进电机的控制装置可以控制至少一个步进电机,上位机可以获取至少一个步进电机的运行参数,然后传输至步进电机的控制装置,步进电机的控制装置可以识别各步进电机的运行参数,然后对对应的步进电机进行控制。
注意,上述仅为本发明的较佳实施例及所运用技术原理。本领域技术人员会理解,本发明不限于这里所述的特定实施例,对本领域技术人员来说能够进行各种明显的变化、重新调整和替代而不会脱离本发明的保护范围。因此,虽然通过以上实施例对本发明进行了较为详细的说明,但是本发明不仅仅限于以上实施例,在不脱离本发明构思的情况下,还可以包括更多其他等效实施例,而本发明的范围由所附的权利要求范围决定。
Claims (8)
1.一种步进电机的控制装置,其特征在于,所述步进电机的控制装置包括FPGA芯片,所述FPGA芯片包括至少一个控制模块,所述控制模块包括:
步数监控子模块,用于监控当前步进电机的运行步数;
控制子模块,与所述步数监控子模块连接,用于根据所述运行步数和预设参数对所述步进电机进行控制;
其中,所述预设参数包括预设校准步数和预设的目标步数;相应的,所述控制子模块,包括:校准控制单元和减速控制单元;
所述校准控制单元,用于在校准功能被触发时,根据所述运行步数和预设校准步数对所述步进电机进行校准控制;
所述减速控制单元,用于在减速功能被触发时,根据所述运行步数和预设的目标步数对所述步进电机进行减速控制;
所述减速控制单元,具体用于:
在减速功能被触发时,根据所述运行步数和预设的目标步数确定剩余步数;
若所述剩余步数小于或等于减速阈值,则根据预设的第一减速曲线控制所述步进电机进行减速,其中,所述减速阈值为触发所述步进电机进行减速修正的阈值;
若所述剩余步数大于减速阈值且所述运行步数大于行进阈值,则根据当前运行步数对应的预先确定的第二减速曲线控制所述步进电机进行减速并根据所述减速阈值和运行步数修正目标步数,其中,所述行进阈值为标识是否控制所述步进电机进行减速的阈值;
其中,所述减速功能被触发包括所述减速控制单元接收到减速触发信号和减速使能信号;
或者,所述预设参数包括:预设的目标步数和目标速度,相应的,所述控制子模块包括:
速度调节单元,用于根据所述运行步数、预设的目标步数和目标速度对所述步进电机进行速度调节。
2.根据权利要求1所述的步进电机的控制装置,其特征在于,所述校准控制单元,具体用于:
在校准功能被触发时,将所述运行步数修正为所述预设校准步数,所述校准功能被触发包括所述校准控制单元接收到校准触发信号和校准使能信号。
3.根据权利要求1所述的步进电机的控制装置,还包括:
边沿检测子模块,分别与所述步数监控子模块和控制子模块连接,用于进行信号的跳变沿的检测,所述信号包括:电机启动信号、校准触发信号和减速触发信号。
4.根据权利要求1所述的步进电机的控制装置,所述速度调节单元,具体用于:
如果所述运行步数对应的速度小于目标速度且所述运行步数小于预设倍数的目标步数,则生成加速指令;
如果所述运行步数对应的速度小于目标速度且所述运行步数大于或等于预设倍数的目标步数,则生成减速指令;
如果所述运行步数等于目标速度且所述运行步数小于所述目标步数减去加速阶段步数,则生成匀速指令;
如果所述目标步数减去所述运行步数小于或等于预设的减速阶段步数,则生成减速指令。
5.根据权利要求1所述的步进电机的控制装置,还包括:
脉冲生成子模块,分别与所述步数监控子模块和控制子模块连接,用于根据预设的启动速度或所述运行步数对应的速度产生脉冲信号,以驱动所述步进电机。
6.根据权利要求1所述的步进电机的控制装置,还包括:
参数配置子模块,与所述控制子模块连接,用于配置所述步进电机的运行参数,所述运行参数包括启动速度、目标速度、目标步数、目标加速度、负载情况、速度对照表、校准使能和/或减速使能,其中,所述速度对照表为根据所述启动速度、目标速度、目标步数、目标加速度和负载情况生成的对照表,所述速度对照表包括第一减速曲线和第二减速曲线。
7.根据权利要求6所述的步进电机的控制装置,还包括:
故障报警子模块,分别与所述步数监控子模块和参数配置子模块连接,用于在接收到结束指令后,根据所述运行参数确定报警信号。
8.一种步进电机的控制系统,其特征在于,包括:上位机和与所述上位机连接的如权利要求1-7任一项所述的步进电机的控制装置;
所述上位机,用于获取至少一个步进电机的运行参数,所述运行参数包括启动速度、目标速度、目标步数、目标加速度、速度对照表、校准使能和/或减速使能;
所述步进电机的控制装置,用于接收所述上位机发送的各所述运行参数,并基于所述运行参数对对应的步进电机进行控制。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201910015183.7A CN109687782B (zh) | 2019-01-08 | 2019-01-08 | 一种步进电机的控制装置和控制系统 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201910015183.7A CN109687782B (zh) | 2019-01-08 | 2019-01-08 | 一种步进电机的控制装置和控制系统 |
Publications (2)
Publication Number | Publication Date |
---|---|
CN109687782A CN109687782A (zh) | 2019-04-26 |
CN109687782B true CN109687782B (zh) | 2021-06-04 |
Family
ID=66192727
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN201910015183.7A Active CN109687782B (zh) | 2019-01-08 | 2019-01-08 | 一种步进电机的控制装置和控制系统 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN109687782B (zh) |
Families Citing this family (6)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN110535379A (zh) * | 2019-08-21 | 2019-12-03 | 广芯微电子(广州)股份有限公司 | 一种伺服电机控制方法及系统 |
CN110602296B (zh) * | 2019-09-17 | 2021-01-15 | 深圳市万普拉斯科技有限公司 | 步进电机运动步数的校准方法、装置及移动终端 |
CN113384218A (zh) * | 2020-03-12 | 2021-09-14 | 青岛海尔滚筒洗衣机有限公司 | 洗鞋设备的报警控制方法及洗鞋设备 |
CN113054879B (zh) * | 2021-03-26 | 2023-02-03 | 深圳市大富智慧健康科技有限公司 | 一种步进电机的速度控制方法及相关设备 |
CN113659889B (zh) * | 2021-08-12 | 2023-12-29 | 飞瑞医疗器械(嘉兴)有限公司 | 电动限束器的控制方法、系统、可读存储介质及电动限束器 |
CN114913165B (zh) * | 2022-05-26 | 2023-03-24 | 北京瑞祺皓迪技术股份有限公司 | 一种步进电机的校准方法、装置、电子设备及存储介质 |
Citations (4)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JP2003186689A (ja) * | 2001-12-14 | 2003-07-04 | Glory Ltd | 貨幣処理機及び貨幣処理機におけるプログラム書換方法 |
CN101425772A (zh) * | 2007-11-02 | 2009-05-06 | 深圳迈瑞生物医疗电子股份有限公司 | 动态数据采集系统及其采集位置精确定位方法 |
CN106887982A (zh) * | 2015-12-15 | 2017-06-23 | 北京京航计算通讯研究所 | 一种基于fpga的步进电机速度控制方法 |
CN107070327A (zh) * | 2017-03-29 | 2017-08-18 | 深圳怡化电脑股份有限公司 | 一种步进电机控制方法及装置 |
Family Cites Families (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN107124125A (zh) * | 2017-06-08 | 2017-09-01 | 西南交通大学 | 一种基于fpga芯片的多轴步进电机控制器系统 |
-
2019
- 2019-01-08 CN CN201910015183.7A patent/CN109687782B/zh active Active
Patent Citations (4)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JP2003186689A (ja) * | 2001-12-14 | 2003-07-04 | Glory Ltd | 貨幣処理機及び貨幣処理機におけるプログラム書換方法 |
CN101425772A (zh) * | 2007-11-02 | 2009-05-06 | 深圳迈瑞生物医疗电子股份有限公司 | 动态数据采集系统及其采集位置精确定位方法 |
CN106887982A (zh) * | 2015-12-15 | 2017-06-23 | 北京京航计算通讯研究所 | 一种基于fpga的步进电机速度控制方法 |
CN107070327A (zh) * | 2017-03-29 | 2017-08-18 | 深圳怡化电脑股份有限公司 | 一种步进电机控制方法及装置 |
Also Published As
Publication number | Publication date |
---|---|
CN109687782A (zh) | 2019-04-26 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN109687782B (zh) | 一种步进电机的控制装置和控制系统 | |
EP3453663B1 (en) | Floor monitoring method, electronic device and computer storage medium for use when robot riding elevator | |
CN107992103B (zh) | 转盘的控制系统及方法 | |
US10017205B2 (en) | Control apparatus and control method of on-vehicle electronic equipment | |
US9889881B2 (en) | Control apparatus and control method of on-vehicle electronic equipment | |
CN105814503A (zh) | 数控装置及数控方法 | |
US10254743B2 (en) | Numerical control apparatus and logging method | |
US10599104B2 (en) | Control device and motor control system | |
CN109195859B (zh) | 电子控制装置及其动作控制方法 | |
US9312794B2 (en) | Motor position controller | |
CN102858492B (zh) | 操作枢转驱动器的方法 | |
CN105559782A (zh) | 一种患者床移动速度的控制方法、装置及设备 | |
JP2019110723A (ja) | 電力変換装置の制御装置 | |
EP3540458A1 (en) | Optical safety sensor | |
JP2005092297A (ja) | 振動抑制フィルタの自動設定方法 | |
US20130253668A1 (en) | Positioning apparatus and plc system using same | |
CN108802611B (zh) | 异常诊断装置和异常诊断方法 | |
US20150229122A1 (en) | Method and device for recognizing a short circuit in a pwn driver circuit | |
CN114394113B (zh) | 车辆轨迹重规划方法、装置、电子设备及存储介质 | |
JP2014154043A (ja) | 電子制御装置、情報処理装置 | |
JP5955447B1 (ja) | エンコーダ故障検出装置 | |
CN109899309B (zh) | 用以检测风扇芯片的时脉频率偏移的系统及方法 | |
US20190187675A1 (en) | Diagnosis System and Electronic Control Device | |
JP7110845B2 (ja) | 情報処理装置及び情報処理方法 | |
JP2018200193A (ja) | モータ制御システム及びレゾルバ/デジタル変換器の異常検出方法 |
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 |