步进电机驱动方法

文档序号:911780 发布日期:2021-02-26 浏览:6次 >En<

阅读说明:本技术 步进电机驱动方法 (Stepping motor driving method ) 是由 陈全帅 曾胜 龚博 喻超凡 朱礼平 于 2020-10-16 设计创作,主要内容包括:本发明公开了一种步进电机驱动方法,包括步骤:在驱动器内预置运行初始运行参数T0和初始脉冲数量;控制器发送自动整定指令至驱动器,驱动器响应自动整定指令并根据初始运行参数T0驱动电机;编码器检测电机转动角度信息,并将检测到的转动角度信息转换成脉冲数量反馈至驱动器,驱动器根据初始脉冲数量与接收到的反馈脉冲数量的比较结果,判断电机是否抖动;如果电机抖动,则调整运行参数T抑制电机抖动,直至电机转动到目标位置后实现平稳停止,保存调整后的运行参数T为工作运行参数T1。本申请的步进电机驱动方法可抑制步进电机抖动,使步进电机到达目标位置后实现平稳停止,以及自动调整步进电机工作运行中的抖动状态,维持步进电机运行状态。(The invention discloses a stepping motor driving method, which comprises the following steps: presetting an operation initial operation parameter T0 and an initial pulse number in the driver; the controller sends an automatic setting instruction to the driver, and the driver responds to the automatic setting instruction and drives the motor according to an initial operation parameter T0; the encoder detects the rotation angle information of the motor, converts the detected rotation angle information into pulse number and feeds the pulse number back to the driver, and the driver judges whether the motor shakes or not according to the comparison result of the initial pulse number and the received feedback pulse number; and if the motor shakes, adjusting the operation parameter T to inhibit the shaking of the motor until the motor rotates to the target position and then stably stops, and storing the adjusted operation parameter T as a working operation parameter T1. The stepping motor driving method can inhibit the shaking of the stepping motor, enables the stepping motor to stably stop after reaching the target position, automatically adjusts the shaking state of the stepping motor in the working operation, and maintains the running state of the stepping motor.)

步进电机驱动方法

技术领域

本发明涉及电机控制技术领域,特别涉及一种步进电机驱动方法。

背景技术

测包机用于对电子元件进行检测及包装,测包机的测盘和纸带在拖动电子元器件的时候,需要快速到达目标位置,并且要求到达目标位置后不能抖动。然而采用传统的步进电机驱动测包机时会造成电机在到达目标位置后非常抖动,导致测盘无法进料,也无法把物料植入纸带中,需要通过更改驱动脉冲的时间间隔来抑制步进电机的抖动。

抑制步进电机的抖动需要更改多个驱动脉冲时间间隔,并且各个驱动脉冲时间之间需要相互匹配,需要工作人员花大量时间去调试匹配,有时候花很久都不能匹配到合适参数,就算匹配到合适的参数,步进电机运行中也会因为外界条件的改变而造成参数不再适用,造成步进电机抖动。

发明内容

本发明旨在至少解决现有技术中存在的技术问题之一。为此,本发明提出一种步进电机驱动方法,可抑制步进电机抖动,使步进电机到达目标位置后实现平稳停止,以及自动调整步进电机工作运行中的抖动状态,维持步进电机运行状态。

根据本发明实施例的步进电机驱动方法,包括至少以下步骤:

在驱动器内预置运行参数T的初始值T0和初始脉冲数量;

控制器发送自动整定指令至驱动器,所述驱动器响应所述自动整定指令并根据初始运行参数T0驱动电机;

编码器检测电机的转动角度信息,并将检测到的所述转动角度信息转换成脉冲数量反馈至所述驱动器,所述驱动器根据初始脉冲数量与接收到的反馈脉冲数量的比较结果,判断电机是否抖动;

如果电机抖动,则调整所述运行参数T抑制电机抖动,直至电机转动到目标位置后实现平稳停止,保存调整后的运行参数T为工作运行参数T1。

根据本发明实施例的步进电机驱动方法,至少具有如下有益效果:与传统的通过脉冲驱动调整电机抖动的技术相比,本申请的步进电机驱动方法中,驱动器内部已实现参数自动整定功能,不需要人为调整参数,只需给一个整定指令,驱动器会自动整定出最优运行参数T抑制步进电机在到达目标位置时的抖动,使步进电机停止平稳;另外本发明还做了参数闭环,电机在运行情况下,实时监控电机运行情况,如果电机出现抖动,驱动器会立即做出反应,调整运行参数。

根据本发明的一些实施例,所述运行参数T包括第一脉冲间隔、第二脉冲间隔和第三脉冲间隔,所述第一脉冲间隔、所述第二脉冲间隔和所述第三脉冲间隔为电机相邻两次基本步进角度之间的时间差,所述第三脉冲间隔、所述第二脉冲间隔和所述第一脉冲间隔对电机的抖动影响程度依次减小。

根据本发明的一些实施例,调整所述运行参数T的具体步骤包括:

所述驱动器根据初始脉冲数量与接收到的反馈脉冲数量进行比较,如果存在脉冲数量差,说明电机抖动,如果脉冲数量差变大,则判断电机抖动增加;

如果电机抖动没有增加,则多次调整所述运行参数T增加一个时间单位继续驱动电机转动,直至电机抖动增加,此时所述运行参数调整为Tn,调整所述运行参数Tn减去一个时间单位变为Tn-1,所述驱动器将运行参数Tn-1保存并定义为电机运行时的工作运行参数T1。

根据本发明的一些实施例,多次调整所述运行参数T增加一个时间单位继续驱动电机转动,直至电机抖动增加,此时所述运行参数调整为Tn,调整所述运行参数Tn减去一个时间单位变为Tn-1,所述驱动器将运行参数Tn-1保存并定义为电机运行时的工作运行参数T1的具体步骤包括:

对所述第三间隔时间每次增加一个时间单位进行多次调整,直至电机抖动增加时,所述第三间隔时间当前值减去一个时间单位并定义为启动第三间隔时间;

继续对所述第二间隔时间每次增加一个时间单位进行多次调整,直至电机抖动增加时,所述第二间隔时间的当前值减去一个时间单位并定义为启动第二间隔时间;

继续对所述第一间隔时间每次增加一个时间单位进行多次调整,直至电机抖动增加时,所述第一间隔时间的当前值减去一个时间单位并定义为启动第一间隔时间;

判断电机抖动是否满足需求,如果不满足,重复上述步骤继续调整,直至电机抖动满足要求,保存所述启动第三间隔时间、所述启动第二间隔时间和所述启动第一间隔时间。

根据本发明的一些实施例,所述驱动器对所述运行参数T进行多次调整,如果调整次数超过第一阈值,启动加速干预步骤,如果调整次数大于第一阈值小于第二阈值,启动减速干预步骤;

所述驱动器根据多次调整信息确定电机平稳停止状态时的运行参数为最优值。

根据本发明的一些实施例,所述加速干预步骤为所述驱动器控制电机加快工作角度中第一个转动角度的转速。

根据本发明的一些实施例,所述减速干预步骤为所述驱动器控制电机降低工作角度中最后一个转动角度的转速。

根据本发明的一些实施例,还包括电机运行状态调整步骤,具体包括:

电机根据所述工作运行参数T1运行,所述编码器读取电机运行状态时的转动角度信息并反馈至所述驱动器,所述驱动器判断电机工作运行时是否抖动;

如果电机工作运行状态抖动,进一步判断电机抖动状态;

所述驱动器根据电机抖动状态对所述工作运行参数T1进行微调。

根据本发明的一些实施例,电机抖动状态包括电机延时到位和电机过冲。

根据本发明的一些实施例,如果电机工作运行时抖动状态为延时到位,所述驱动器下调所述工作运行参数T1;

如果电机运行时抖动状态为过冲,所述驱动器上调所述工作运行参数T1。

本发明的附加方面和优点将在下面的描述中部分给出,部分将从下面的描述中变得明显,或通过本发明的实践了解到。

附图说明

本发明的上述和/或附加的方面和优点从结合下面附图对实施例的描述中将变得明显和容易理解,其中:

图1为本发明实施例的步进电机驱动方法的流程示意图;

图2为本发明另一个实施例的步进电机整定状态时对应的驱动方法的详细流程图;

图3为本发明另一个实施例的步进电机驱动方法的具体调整方式;

图4为本发明另一个实施例的步进电机工作运行状态时对应的驱动方法的详细流程图。

具体实施方式

下面详细描述本发明的实施例,实施例的示例在附图中示出,其中自始至终相同或类似的标号表示相同或类似的元件或具有相同或类似功能的元件。下面通过参考附图描述的实施例是示例性的,仅用于解释本发明,而不能理解为对本发明的限制。

在本发明的描述中,需要理解的是,涉及到方位描述,例如上、下、前、后、左、右等指示的方位或位置关系为基于附图所示的方位或位置关系,仅是为了便于描述本发明和简化描述,而不是指示或暗示所指的装置或元件必须具有特定的方位、以特定的方位构造和操作,因此不能理解为对本发明的限制。

在本发明的描述中,若干的含义是一个或者多个,多个的含义是两个及两个以上,大于、小于、超过等理解为不包括本数,以上、以下、以内等理解为包括本数。如果有描述到第一、第二只是用于区分技术特征为目的,而不能理解为指示或暗示相对重要性或者隐含指明所指示的技术特征的数量或者隐含指明所指示的技术特征的先后关系。

本发明的描述中,除非另有明确的限定,设置、安装、连接等词语应做广义理解,所属技术领域技术人员可以结合技术方案的具体内容合理确定上述词语在本发明中的具体含义。

如图1所示,图1是本申请一个实施例提供的步进电机驱动方法的流程示意图,该步进电机驱动方法包括但不限于以下步骤:

S100,在驱动器内预置运行参数T的初始值T0和初始脉冲数量,可以理解的是,本申请中的步进电机驱动方法可以使步进电机在转动一个工作角度后(即运行到目标位置后接收电子元器件等物料)平稳停止,实现自动整定,首先在驱动器内预置运行参数T0,在一实施例中,运行参数T的初始值即初始运行参数T0,需要满足实现电机正常运行,通常是通过控制器向驱动器多次发送驱动脉冲运行电机,每发送一个驱动脉冲电机对应转动一个基本步进角度,经过几个脉冲后,电机完成一个工作角度,而一个工作角度需要的总时间为电机的转动时间,在本申请中运行参数T定义为脉冲间隔,运行参数的初始值T0定义为脉冲间隔的最小值,脉冲间隔的最小值不做限定,只要脉冲间隔最小值与脉冲时间总时长满足启动时间要求,以及确保电机每个步进角能够正常转动即可。

S200,控制器发送自动整定指令至驱动器,驱动器响应自动整定指令并根据初始运行参数T0驱动电机,可以理解的是,电机在工作运行之前需要进行初始状态的整定设置,传统电机整定方式需要人工多次向驱动器发送控制脉冲指令驱动电机,对每一个单独的控制脉冲指令需要一边发送一边调整优化,直至多个控制脉冲指令之间的时间间隔组合满足电机整定需求,完成电机的整定,在本申请中,相对于传统电机整定的方式,控制器只需要发送一次自动整定指令,驱动器就会运行预置的初始运行参数T0驱动电机,通过在驱动器内预置运行参数可以实现电机自动整定(即步进电机在转动一个工作角度后到达目标位置后平稳停止),提高调试效率。

S300,编码器检测电机的转动角度信息,并将检测到的转动角度信息转换成脉冲数量反馈至驱动器,驱动器根据初始脉冲数量与接收到的反馈脉冲数量的比较结果,判断电机是否抖动,可以理解的是,电机的运转状态包括周期性的转动过程和停止过程,在一个运转周期内,电机在转动到指定目标位置时需要停止一定时间实现进料,为实现稳定准确进料需要对电机停止时的抖动状态进行严格控制,因此需要对电机运转状态进行调整,使电机转动到位后平稳停止,在本申请的步进电机驱动方法的一些实施例中,首先由控制器发送自动整定指令给驱动器,驱动器以运行参数的初始值T0开始工作,驱动电机转动,当电机转动一个工作角度后(转动过程)到达目标位置,编码器检测电机的转动角度信息,并将检测到的转动角度信息转换成脉冲信息反馈至驱动器,驱动器事先预置有编码器的初始脉冲信息,通过评估反馈的脉冲信息与预置的脉冲信息的差异来判断电机是否抖动。

需要说明的是,电机转动具有基本步进角,基本步进角包括1.8°或0.9°等标准角度,电机的一个工作角度由多个基本步进角组成,在本申请实施例中,步进电机的基本步进角度为1.8°,一个工作角度由4个基本步进角组成,即一个工作角度为7.2°,步进电机旋转一周为360°,进行50个工作角度的周期转动,驱动器事先预置的初始脉冲为20000个,对应电机旋转360°,因此,当电机旋转一个工作角度7.2°时,编码器检测到的脉冲数量的理论值为400个,如果编码器检测到的脉冲数量的实际值多于或者少于400个,则代表电机转动过程中存在抖动。

S400,如果电机抖动,则调整运行参数T抑制电机抖动,直至电机运行到目标位置后实现平稳停止,保存调整后的运行参数T为工作运行参数T1。在一实施例中,当电机抖动,驱动器自动调整运行参数T,从初始值T0开始调整,直到判定电机停止时不抖动为止,保存电机停止时的运行参数为工作运行参数T1,并以工作运行参数T1驱动电机进行周期运行。

如图2所示,图2是本申请一个实施例提供的步进电机整定状态时对应的驱动方法的详细流程图,在本申请的一些实施例中,若电机以运行参数的初始值T0运行后不存在抖动,则初始运行参数T0为工作运行参数T1,若电机以运行参数的初始值T0运行后存在抖动,则驱动器会自动调整运行参数T,即调整脉冲间隔参数,在本申请的实施例中,电机一个工作角度由4个基本步进角组成,一个步进角对应一个脉冲,因此,需要四个步进脉冲,四个步进脉冲之间具有三个脉冲间隔,因此需要对三个脉冲间隔参数进行调整,通常来说,三个脉冲间隔参数中,最后一个脉冲间隔对电机抖动影响较大,而最先一个脉冲间隔对电机抖动影响较小,因此先调整最后一个脉冲间隔,即第三脉冲间隔,在第三脉冲间隔参数基础上依次进行第二脉冲间隔和第一脉冲间隔调整,经过多个步进角度的调整,最终确定最优的运行参数T为工作运行参数T1。

在一实施例中,对第一脉冲间隔、第二脉冲间隔和第三脉冲间隔三个运行参数的调整方法如图2所示,首先将电机根据预置的运行参数的初始值T0启动后的对应的脉冲数量与预置的脉冲数量比较,判断电机是否抖动以及抖动是否增加,如果电机抖动没有增加,调整第三脉冲间隔增加一个时间单位,驱动器以增加一个时间单位后新的第三脉冲间隔继续驱动电机转动,直至电机抖动增加,第三脉冲间隔减去一个时间单位,驱动器将减去一个时间单位后新的第三脉冲间隔定义为第三脉冲间隔最优值,确定第三脉冲间隔最优值后;如果电机抖动没有增加,继续调整第二脉冲间隔增加一个时间单位,驱动器以增加一个时间单位后新的第二脉冲间隔继续驱动电机转动,直至电机抖动增加,第二脉冲间隔减去一个时间单位,驱动器将减去一个时间单位后新的第二脉冲间隔定义为第二脉冲间隔最优值;如果电机抖动没有增加,继续调整第一脉冲间隔增加一个时间单位,驱动器以增加一个时间单位后新的第一脉冲间隔继续驱动电机转动,直至电机抖动增加,第一脉冲间隔减去一个时间单位,驱动器将减去一个时间单位后新的第一脉冲间隔定义为第一脉冲间隔最优值,经过多次循环,确定电机抖动是否满足要求,如果满足要求,驱动器保存运行参数最优值,即保存最优的第三脉冲间隔、第二脉冲间隔和第一脉冲间隔的最优值,并将上述最优值定义为电机工作运行参数T1。

如图4所示,在本申请的另一个实施例还提供了一种步进电机工作运行状态时对应的驱动方法的详细流程图,在本实施例中,以运行状态为例进行说明,对步进电机由于运行发热或者受外力影响产生的抖动进行进一步抑制,步进电机在整定状态基础上根据工作运行参数T1进行周期运转,如果运转过程中发生抖动,则在工作运行参数T1的基础上进行进一步微调整,实现运行状态的抖动最小化,具体为,电机根据工作运行参数T1运行进入工作运行状态,编码器对电机进行实时检测,编码器检测到电机实际对应的脉冲数量与驱动器内置的编码器脉冲数量的差异判定电机运行是否抖动,并根据脉冲差异的类型将电机抖动状态分为电机延时到位状态和电机过冲状态。

如果检测到的脉冲数量低于内置的编码器脉冲数量目标值,说明电机抖动是由电机延时造成的,因此需要对工作运行参数T1进行调整,具体为,首先根据脉冲数量的差异量判断电机抖动程度,如果电机抖动较小,则调整对电机抖动影响较小的运行参数,在本申请实施例中,第一脉冲间隔对电机抖动影响最小,第三脉冲间隔对电机抖动影响较大,因此,设置脉冲数量差异差在3个以内,下调第一脉冲间隔,下调第一脉冲间隔时间可以缩短电机第二次基本步进角相对第一次基本步进角的转动时间,从而缩短一个工作角度的整体时间,提高运动频率,弥补电机延时造成的抖动,如果脉冲数量差异差大于3个小于5个,则下调对电机抖动影响相对较大的第二脉冲间隔,弥补电机延时造成的抖动,如果脉冲数量差异差大于5个,则下调对电机抖动影响相对最大的第三脉冲间隔。

如果检测到的脉冲数量高于内置的编码器脉冲数量目标值,说明电机抖动是由电机过冲造成的,因此需要对工作运行参数T1进行调整,同理,首先根据脉冲数量的差异量判断电机抖动程度,如果电机抖动较小,则调整对电机抖动影响较小的运行参数,在本申请实施例中,第一脉冲间隔对电机抖动影响最小,第三脉冲间隔对电机抖动影响较大,因此,设置脉冲数量差异差在3个以内,上调第一脉冲间隔,上调第一脉冲间隔时间可以增大电机第二次基本步进角相对第一次基本步进角的转动时间,从而增加一个工作角度的整体时间,降低运动频率,弥补电机过冲造成的抖动,如果脉冲数量差异差大于3个小于5个,则上调对电机抖动影响相对较大的第二脉冲间隔,弥补电机过冲造成的抖动,如果脉冲数量差异差大于5个,则上调对电机抖动影响相对最大的第三脉冲间隔。

如图3所示,在本申请的另一个实施例还提供了一种步进电机驱动方法的具体调整方式,对应于如图4所示的步进电机工作运行状态的驱动方法,电机根据工作运行参数T1运行,编码器读取电机运行状态时的转动角度信息并反馈至驱动器,驱动器判断电机运行时是否抖动,可以理解的是,电机运行状态时根据驱动器给出的工作运行参数T1转动,并对运行状态时电机的抖动情况进行实时监督,当电机转动一个工作角度后,编码器会检测到电机转动角度信息,并将电机转动角度信息反馈回驱动器,驱动器根据上一次电机的运行状态即电机转动角度信息与本次电机的运行的转动角度信息进行比对,确定电机运行是否抖动,如果电机运行状态抖动,驱动器对工作运行参数T进行多次调整,即完成一个工作闭环,如果调整次数超过第一阈值,启动加速干预步骤,如果调整次数大于第一阈值小于第二阈值,启动减速干预步骤,可以理解的是,电机在运行的过程中可能受到外力、散热等因素影响,导致运行抖动,此时可以按照图4流程图对应的步骤进行参数自动调整,抑制抖动使电机平稳运转,当连续调整达到一定次数扔无法使电机平稳运转,驱动器则启动预置的加速功能,使电机转动的速度加快,改变当前电机的运行状态重新匹配调整,当加速功能启用后,依旧无法调整出使电机稳定运转的参数,驱动器将启用内部预置的减速功能,使电机转动的速度减慢,继续调整。

需要说明的是,加速干预或者减速干预具体实现方法是,根据编码器获取电机转子位置,控制扭力和电机转子的角度,当扭力和转子保持90°时相当于加速干预,当扭力和转子保持-90°时相当于减速干预,在本申请的一些实施例中,电机一个工作角度对应转动四次,当电机执行加速干预程序时,四次转动中的第一次转动速度进行加快,改变电机整体的运行状态重新自动调整,当电机执行减速干预程序时,在第一次转动速度加快的前提下对电机第四次转动速度进行减速调整,再次改变电机的运行状态重新自动调整;驱动器根据多次调整信息确定运行参数T的最优值,使电机平稳运转,可以理解的是,通过上述方法进行调整后,会出现多个电机平稳运转状态,即电机转动到位后实现平稳停止,驱动器将对上述调整状态进行记录,并筛选出对应的参数最优值,并以参数最优值驱动电机运转,保持电机平稳运行。

需要说明的是,在本申请的一个实施例中,图3所示的调整方式应用于步进电机运行状态,但并不局限于电机工作运行状态,同样适用于图1所示实施例提供的的步进电机驱动方法的流程示意图或者图2所示的实施例提供的步进电机整定状态对应的驱动方法的详细流程示意图。

下面参考图2至图4以一个具体的实施例详细描述根据本申请实施例的步进电机驱动方法。值得理解的是,下述描述仅是示例性说明,而不是对申请的具体限制。

如图2所示,触发驱动器参数自整定程序,三组脉冲间隔参数全部赋值最小值,触发电机旋转一个工作角度后,通过编码器的值记录第一次电机抖动情况;然后第三脉冲间隔参数自动加1个时间单位后再次触发电机旋转一个工作角度,记录编码器的抖动情况,通过和上一次编码器抖动情况进行比较,如果抖动变小了,说明增加第三脉冲间隔参数有效,继续增加第三脉冲间隔参数的值,继续比较;当增加第三脉冲间隔参数出现抖动变大的情况,则说明第三脉冲间隔参数上次的值最优,此时,第三脉冲间隔参数减1个单位时间,确定第三脉冲间隔参数参数位置;继续触发电机旋转一个工作角度,这时第三脉冲间隔参数已经整定结束,开始整定第二脉冲间隔参数,参数第二脉冲间隔的整定和第三脉冲间隔参数整定一样;相同的方法整定出最优的第一脉冲间隔参数;然后判断目前参数是否满足抖动需求,如果不满足,复位第三脉冲间隔参数、第二脉冲间隔参数和第一脉冲间隔参数标志位,在上次最优的基础上再次寻找最优参数,直至满足抖动要求。

如图3所示,在电机运行参数T整定后,进入运行状态的过程中可以对工作运行参数T1进行实时调整,使电机运行保持稳定,当连续调整100次都无法使电机稳定的情况下,启用内部预置的加速功能,当加速功能启用后,连续100次依旧无法调整出使电机稳定的参数,将启用内部预置的减速功能,继续调整。

如图4所示,以调整后的工作运行参数T1运行电机;采集编码器的数据,用于判断电机抖动情况;如何电机延时到位,则下调运行参数T1;如果电机过冲,则上调运行参数T1;根据延时或过冲的对应的抖动量,来确定调整某一个具体参数,完成对电机运行状态的具体调整,使电机运行平稳。

需要说明的是,上述实施例中的参数调整的依据是是通过计算机采集大量数据,利用MATLAB的函数拟合功能,求出三元函数(三个运行参数即第一脉冲间隔、第二脉冲间隔和第三脉冲间隔为自变量参数,因变量为电机编码器脉冲数量对应值,用于判断电机抖动情况),根据实时编码器的反馈,再利用求出的三元函数大致计算出当前状态下参数的调整趋势。

上面结合附图对本发明实施例作了详细说明,但是本发明不限于上述实施例,在所属技术领域普通技术人员所具备的知识范围内,还可以在不脱离本发明宗旨的前提下作出各种变化。

14页详细技术资料下载
上一篇:一种医用注射器针头装配设备
下一篇:一种鲁棒性的永磁同步电机单电流传感器预测控制方法

网友询问留言

已有0条留言

还没有人留言评论。精彩留言会获得点赞!

精彩留言,会给你点赞!