首页 / 专利分类库 / 发电、变电或配电 / 电机的控制方法及装置、电子设备和存储介质

电机的控制方法及装置、电子设备和存储介质

申请号 CN202410358740.6 申请日 2024-03-27 公开(公告)号 CN117955372A 公开(公告)日 2024-04-30
申请人 珠海格力电器股份有限公司; 发明人 翟亚飞; 何春茂; 廖志成;
摘要 本 申请 涉及一种 电机 的控制方法及装置、 电子 设备和存储介质,其中,该方法包括:获取当前插补周期所对应的第一 位置 数据和第二位置数据;根据第一位置数据、第二位置数据和插补周期确定电机的延时周期数;通过预设的关联关系,基于插补缓冲区中的位置数据确定出与延时周期数所对应的位置数据,并将确定的位置数据控制为下一插补周期电机所对应的位置数据。通过本申请,解决了 现有技术 中由于多电机自身 硬件 差异和增益参数的差异会使得响应延时周期不同,从而导致多电机不同步进而使得加工 工件 的轮廓存在较大误差的技术问题。
权利要求

1.一种电机的控制方法,其特征在于,包括:
获取当前插补周期所对应的第一位置数据和第二位置数据,其中,所述第一位置数据为数控系统基于插补周期从插补缓冲区选择并下发给电机驱动器的位置数据,所述第二位置数据为电机编码器反馈的实时位置数据;所述插补缓冲区的数量为多个,且每一个插补缓冲区中存储有位置数据;
根据所述第一位置数据、所述第二位置数据和插补周期确定所述电机的延时周期数;
通过预设的关联关系,基于所述插补缓冲区中的位置数据确定出与所述延时周期数所对应的位置数据,并将确定的位置数据控制为下一插补周期电机所对应的位置数据;其中,所述关联关系用于表征延时周期数,插补周期以及插补缓冲区之间的关联关系。
2.根据权利要求1所述的方法,其特征在于,根据所述第一位置数据、第二位置数据和插补周期确定所述电机的延时周期数包括:
根据所述第一位置数据与所述第二位置数据,确定电机编码器反馈的位置数据与数控系统进行插补后下发给电机驱动器的位置数据相等时所等待的时长,并将所述时长除以所述插补周期得到所述电机的延时周期数;
对多个插补周期内的多个延时周期数求平均得到所述电机的延时周期数,其中,所述多个插补周期为多个数控程序的执行周期。
3.根据权利要求2所述的方法,其特征在于,根据所述第一位置数据与所述第二位置数据,确定电机编码器反馈的位置数据与数控系统进行插补后下发给电机驱动器的位置数据相等时所等待的时长,并将所述时长除以所述插补周期得到所述电机的延时周期数包括:
确定当前插补周期所对应的所述第一位置数据与所述第二位置数据的差值的绝对值;
获取所述当前插补周期的插补速度与所述当前插补周期的时长之间的乘积结果;
将所述绝对值除以所述乘积结果的结果,确定为所述电机的延时周期数。
4.根据权利要求1所述的方法,其特征在于,在所述延时周期数为整数的情况下,通过预设的关联关系,确定与所述延时周期数所关联的插补缓冲区中的位置数据包括:
根据所述关联关系,确定所述整数与所述当前插补周期数之和的第一结果;
确定与所述第一结果相等的插补缓冲区的索引号;
将所述索引号所对应的插补缓冲区中的位置数据,确定为与所述延时周期数所关联的插补缓冲区中的位置数据。
5.根据权利要求1所述的方法,其特征在于,在所述延时周期数为非整数的情况下,通过预设的关联关系,确定与所述延时周期数所关联的插补缓冲区中的位置数据包括:
根据所述关联关系确定所述整数与所述当前插补周期数之和的第二结果,并确定与所述第二结果相等的插补缓冲区的索引号,以及获取所述索引号所对应的插补缓冲区中的第三位置数据;
根据所述关联关系,获取所述索引号的下一索引号所对应的插补缓冲区中的第四位置数据,并将所述第三位置数据与所述第四位置数据的和乘以所述延时周期数的小数部分的结果确定为第五位置数据,以及将所述第三位置数据与所述第五位置数据之和的结果确定为与所述延时周期数所关联的插补缓冲区中的位置数据。
6.根据权利要求1所述的方法,其特征在于,所述方法还包括:
设置预设数量的插补缓冲区,并在每一个插补缓冲区中设置对应的位置数据,其中,所述插补缓冲区中的位置数据为电机的插补数据。
7.一种电机的控制装置,其特征在于,包括:
获取模,用于获取当前插补周期所对应的第一位置数据和第二位置数据,其中,所述第一位置数据为数控系统基于插补周期从插补缓冲区选择并下发给电机驱动器的位置数据,所述第二位置数据为电机编码器反馈的实时位置数据;所述插补缓冲区的数量为多个,且每一个插补缓冲区中存储有位置数据;
确定模块,用于根据所述第一位置数据、所述第二位置数据和插补周期确定所述电机的延时周期数;
处理模块,用于通过预设的关联关系,基于所述插补缓冲区中的位置数据确定出与所述延时周期数所对应的位置数据,并将确定的位置数据控制为下一插补周期电机所对应的位置数据;其中,所述关联关系用于表征延时周期数,插补周期以及插补缓冲区之间的关联关系。
8.根据权利要求7所述的装置,其特征在于,所述确定模块包括:
第一确定单元,用于根据所述第一位置数据与所述第二位置数据,确定电机编码器反馈的位置数据与数控系统进行插补后下发给电机驱动器的位置数据相等时所等待的时长,并将所述时长除以所述插补周期得到所述电机的延时周期数;
第一处理单元,用于对多个插补周期内的多个延时周期数求平均得到所述电机的延时周期数,其中,所述多个插补周期为多个数控程序的执行周期。
9. 一种电子设备,包括:至少一个通信接口;与所述至少一个通信接口相连接的至少一个总线;与所述至少一个总线相连接的至少一个处理器;与所述至少一个总线相连接的至少一个存储器,其中, 所述处理器被配置为执行权利要求1至6任一项所述的电机的控制方法。
10.一种计算机存储介质,存储有计算机可执行指令,所述计算机可执行指令用于执行权利要求1至6任一项所述的电机的控制方法。

说明书全文

电机的控制方法及装置、电子设备和存储介质

技术领域

[0001] 本申请涉及电机控制领域,尤其涉及一种电机的控制方法及装置、电子设备和存储介质。

背景技术

[0002] 随着互联网的发展,对于工件的加工通常是由多电机同时工作进行加工,但由于多电机自身硬件差异和增益参数的差异等会导致响应延时周期不同,从而导致多电机不同步使得加工工件的轮廓存在较大误差。发明内容
[0003] 本申请提供了一种电机的控制方法及装置、电子设备和存储介质,以解决由于多电机自身硬件差异和增益参数的差异会使得响应延时周期不同,从而导致多电机不同步进而使得加工工件的轮廓存在较大误差的技术问题。
[0004] 第一方面,本申请提供了一种电机的控制方法,包括:获取当前插补周期所对应的第一位置数据和第二位置数据,其中,所述第一位置数据为数控系统基于插补周期从插补缓冲区选择并下发给电机驱动器的位置数据,所述第二位置数据为电机编码器反馈的实时位置数据;所述插补缓冲区的数量为多个,且每一个插补缓冲区中存储有位置数据;根据所述第一位置数据、所述第二位置数据和插补周期确定所述电机的延时周期数;通过预设的关联关系,基于所述插补缓冲区中的位置数据确定出与所述延时周期数所对应的位置数据,并将确定的位置数据控制为下一插补周期电机所对应的位置数据;其中,所述关联关系用于表征延时周期数,插补周期以及插补缓冲区之间的关联关系。
[0005] 第二方面,本申请提供了一种电机的控制装置,包括:获取模,用于获取当前插补周期所对应的第一位置数据和第二位置数据,其中,所述第一位置数据为数控系统基于插补周期从插补缓冲区选择并下发给电机驱动器的位置数据,所述第二位置数据为电机编码器反馈的实时位置数据;所述插补缓冲区的数量为多个,且每一个插补缓冲区中存储有位置数据;确定模块,用于根据所述第一位置数据、所述第二位置数据和插补周期确定所述电机的延时周期数;处理模块,用于通过预设的关联关系,基于所述插补缓冲区中的位置数据确定出与所述延时周期数所对应的位置数据,并将确定的位置数据控制为下一插补周期电机所对应的位置数据;其中,所述关联关系用于表征延时周期数,插补周期以及插补缓冲区之间的关联关系。
[0006] 第三方面,本申请提供了一种电子设备,包括:至少一个通信接口;与所述至少一个通信接口相连接的至少一个总线;与所述至少一个总线相连接的至少一个处理器;与所述至少一个总线相连接的至少一个存储器,其中,所述处理器被配置为执行本申请上述第一方面所述的电机的控制方法。
[0007] 第四方面,本申请还提供了一种计算机存储介质,存储有计算机可执行指令,所述计算机可执行指令用于执行本申请上述第一方面所述的电机的控制方法。
[0008] 本申请实施例提供的上述技术方案与现有技术相比具有如下优点:通过本申请实施例提供的该方法,基于当前插补周期从对应的缓冲区获取位置数据下发给电机之后,如果当前电机的实时位置数据与从缓冲区获取的位置数据不相等,则表明当前电机存在延时。在本申请实施例中进一步可以根据从缓冲区获取的位置数据和电机反馈的实时位置数据,以及插补周期可以确定出当前电机的延时周期数。基于此,通过预设的关联关系,基于延时周期数从当前插补周期所对应的插补缓冲区及之后的插补缓冲区中确定位置数据,并将确定的位置数据确定为下一插补周期的位置数据实现了对电机的延时,使得多电机能够在加工工件过程中能够同步,解决了现有技术中由于多电机自身硬件差异和增益参数的差异会使得响应延时周期不同,从而导致多电机不同步进而使得加工工件的轮廓存在较大误差的技术问题。附图说明
此处的附图被并入说明书中并构成本说明书的一部分,示出了符合本发明的实施
例,并与说明书一起用于解释本发明的原理。
[0009] 为了更清楚地说明本发明实施例或现有技术中的技术方案,下面将对实施例或现有技术描述中所需要使用的附图作简单地介绍,显而易见地,对于本领域普通技术人员而言,在不付出创造性劳动性的前提下,还可以根据这些附图获得其他的附图。
[0010] 一个或多个实施例通过与之对应的附图中的图片进行示例性说明,这些示例性说明并不构成对实施例的限定,附图中具有相同参考数字标号的元件表示为类似的元件,除非有特别申明,附图中的图不构成比例限制。
[0011] 图1为本申请实施例提供的一种电机的控制方法流程图;图2为本申请实施例提供的一种电机的控制方法可选流程图;
图3为本申请实施例提供的一种电机的控制装置结构示意图;
图4为本申请实施例提供的一种电子设备的结构示意图。

具体实施方式

[0012] 为使本申请实施例的目的、技术方案和优点更加清楚,下面将结合本申请实施例中的附图,对本申请实施例中的技术方案进行清楚、完整地描述,显然,所描述的实施例是本申请的一部分实施例,而不是全部的实施例。基于本申请中的实施例,本领域普通技术人员在没有做出创造性劳动的前提下所获得的所有其他实施例,都属于本申请保护的范围。
[0013] 下文的公开提供了许多不同的实施例或例子用来实现本发明的不同结构。为了简化本发明的公开,下文中对特定例子的部件和设置进行描述。当然,它们仅仅为示例,并且目的不在于限制本发明。此外,本发明可以在不同例子中重复参考数字和/或字母。这种重复是为了简化和清楚的目的,其本身不指示所讨论各种实施例和/或设置之间的关系。
[0014] 首先,对本申请中电机跟随补偿控制方式进行说明;跟随误差补偿是指在数控系统中,通过对系统输出进行修正,以减小或消除由于系统动态特性、外部干扰或测量误差等原因引起的误差。在数控系统中,误差补偿是一种常用的技术手段,用于提高系统的稳定性精度
[0015] 对此,跟随误差补偿可以分为两种常见的方式:前馈补偿和反馈补偿。其中,前馈补偿是指在数控系统中引入一个与期望输出相关的信号,通过预先计算和补偿系统的动态特性,以消除或减小系统输出的误差。前馈补偿可以有效地抑制系统的动态响应,提高系统的跟随性能。
[0016] 反馈补偿是指通过测量系统输出与期望输出之间的误差,并将该误差信号进行处理和修正,以调节系统的控制输入,使系统输出逐渐趋近于期望输出。反馈补偿可以根据系统实际的输出情况来实时调整控制输入,从而实现对系统误差的补偿和校正。
[0017] 为了解决现有技术中由于多电机自身硬件差异和增益参数的差异会使得响应延时周期不同,从而导致多电机不同步进而使得加工工件的轮廓存在较大误差的技术问题,本申请提供了一种电机的控制方法,如图1所示,该方法的步骤包括:步骤101,获取当前插补周期所对应的第一位置数据和第二位置数据,其中,第一位置数据为数控系统基于插补周期从插补缓冲区选择并下发给电机驱动器的位置数据,第二位置数据为电机编码器反馈的实时位置数据;插补缓冲区的数量为多个,且每一个插补缓冲区中存储有位置数据。
[0018] 在本申请实施例中,电机可以是伺服电机,在具体示例中,在对工件加工过程中为保证能够加工的工件能够更加符合预期,通常是在加工过程中在X、Y、Z三轴均有对应的伺服电机,电机在加工工件的过程是以插补的方式进行加工,且是以插补周期为时间轴进行加工。此外,数控系统为用于控制电机的系统,而电机编码器是向数控系统反馈位置数据,反馈的是当前电机的实时位置数据,该实时位置数据由于电机内部或外界的各种原因与数控系统进行插补后下发给电机驱动器的位置数据是不同的,这两个位置数据(第一位置数据与第二位置数据)的不同表明电机是存在延时的,因此,可以根据这两个位置数据以插补周期为单位确定出当前电机的延时周期数。
[0019] 步骤102,根据第一位置数据、第二位置数据和插补周期确定电机的延时周期数。
[0020] 步骤103,通过预设的关联关系,基于插补缓冲区中的位置数据确定出与延时周期数所对应的位置数据,并将确定的位置数据控制为下一插补周期电机所对应的位置数据;其中,关联关系用于表征延时周期数,插补周期以及插补缓冲区之间的关联关系。
[0021] 需要说明的是,该关联关系在具体确定位置数据的过程是指基于延时周期数从当前插补周期及之后所对应插补缓冲区中确定位置数据,具体可以结合下述步骤31至步骤33中解释可知延时周期数,插补周期以及插补缓冲区的之间的关系。
[0022] 可见,通过本申请实施例的上述步骤101至步骤103,基于当前插补周期从对应的缓冲区获取位置数据下发给电机之后,如果当前电机的实时位置数据与从缓冲区获取的位置数据不相等,则表明当前电机存在延时。在本申请实施例中进一步可以根据从缓冲区获取的位置数据和电机反馈的实时位置数据,以及插补周期可以确定出当前电机的延时周期数。基于此,通过预设的关联关系,基于延时周期数从当前插补周期所对应的插补缓冲区及之后的插补缓冲区中确定位置数据,并将确定的位置数据确定为下一插补周期的位置数据实现了对电机的延时,使得多电机能够在加工工件过程中能够同步,解决了现有技术中由于多电机自身硬件差异和增益参数的差异会使得响应延时周期不同,从而导致多电机不同步进而使得加工工件的轮廓存在较大误差的技术问题。
[0023] 在本申请实施例的可选实施方式中,对于上述步骤102中涉及到的根据第一位置数据、第二位置数据和插补周期确定电机的延时周期数的方式,进一步可以包括:步骤11,根据第一位置数据与第二位置数据,确定电机编码器反馈的位置数据与
数控系统进行插补后下发给电机驱动器的位置数据相等时所等待的时长,并将时长除以插补周期得到电机的延时周期数;
步骤12,对多个插补周期内的多个延时周期数求平均得到电机的延时周期数,其
中,多个插补周期为多个数控程序的执行周期。
[0024] 在具体示例中,上述步骤11和步骤12中第一位置数据和第二位置数据,可以通过人机交互系统获取,从人机交互系统中可以获取相应的数据,而且可以基于人机交互程序执行NC(数控程序)以获取电机的延时周期数。需要说明的是,一个NC程序对应一个插补周期,上述第一位置数据和第二位置数据为一个插补周期所对应的数据,因此,在有多个插补周期的情况下,通过对多个插补周期内对应的多个延时周期数求平均得到最终的电机延时周期数,进而通过求平均得到的延时周期数对位置数据进行调整,使得多电机能够同步输出。
[0025] 进一步地,对于上述步骤11中涉及到的根据第一位置数据与第二位置数据,确定电机编码器反馈的位置数据与数控系统进行插补后下发给电机驱动器的位置数据相等时所等待的时长,并将时长除以插补周期得到电机的延时周期数的方式,进一步可以包括:步骤21,确定当前插补周期所对应的第一位置数据与第二位置数据的差值的绝对
值;
步骤22,获取当前插补周期的插补速度与当前插补周期的时长之间的乘积结果;
步骤23,将绝对值除以乘积结果的结果,确定为电机的延时周期数。
[0026] 对于上述步骤21至步骤23涉及到的得到延时周期数的方式,可以通过如下公式来实现:
[0027] 其中, 为电机延时周期数; 为t时刻的插补位置数据,为t时刻的反馈位置数据; 为t时刻的速度值; 为插补周期时间。
[0028] 可见,根据数控系统在插补过程中输出的位置数据(第一位置数据)与电机编码器反馈的位置数据(第二位置数据)的差值的绝对值除以当前插补速度值,得到的数值为电机延时时间,进而通过电机延时时间除以插补周期,即可得到电机的延时周期数。
[0029] 进一步地,对于本申请实施例中通过上述方式确定的延时周期数有可能是一个整数,有可能是一个非整数,其中,整数部分对应插补缓冲区索引号的位置数据,小数部分对应整数部分对应的插补缓冲区索引号与下一个索引号对应的位置数据的比例关系值。整数部分与小数部分所对应的位置数据的和为当前延时周期数所对应的位置数据。
[0030] 因此,在本申请实施例的可选实施方式中,在延时周期数为整数的情况下,对于上述步骤103中涉及到的通过预设的关联关系,确定与延时周期数所关联的插补缓冲区中的位置数据的方式,进一步可以包括:步骤31,根据关联关系,确定整数与当前插补周期数之和的第一结果;
步骤32,确定与第一结果相等的插补缓冲区的索引号;
步骤33,将索引号所对应的插补缓冲区中的位置数据,确定为与延时周期数所关
联的插补缓冲区中的位置数据。
[0031] 在本申请实施例中,在多电机未出现不同步的情况下,插补周期的数值与插补缓冲区是一致的,即当前插补周期数为5时,则是获取索引号为5的插补缓冲区中的位置数据下发给电机。通过上述步骤31至步骤33可知,如果多电机出现不同步,且当前的延时周期为整数,则直接将整数部分与当前插补周期之和所对应的索引号的插补缓冲区中的位置数据确定为延时周期数所关联的位置数据。例如当前延时周期数为2,当前插补周期为4,则第一结果为2+4=6,即索引号为6的插补缓冲区所对应的位置数据为与该延时周期数所对应的位置数据,则在下一插补周期5时,将索引号为6的插补缓冲区中的位置数据下发给电机,即提前一个周期的位置数据下发给对电机,减少了电机的延迟。
[0032] 在本申请实施例的另一个可选实施方式中,在延时周期数为非整数的情况下,对于上述步骤103中涉及到的通过预设的关联关系,确定与延时周期数所关联的插补缓冲区中的位置数据的方式,进一步可以包括:步骤41,根据关联关系确定整数与当前插补周期数之和的第二结果,并确定与第
二结果相等的插补缓冲区的索引号,以及获取索引号所对应的插补缓冲区中的第三位置数据;
步骤42,根据关联关系,获取索引号的下一索引号所对应的插补缓冲区中的第四
位置数据,并将第三位置数据与第四位置数据的和乘以延时周期数的小数部分的结果确定为第五位置数据,以及将第三位置数据与第五位置数据之和的结果确定为与延时周期数所关联的插补缓冲区中的位置数据。
[0033] 对于上述步骤41和步骤42,在具体示例中,如插补缓冲区的数量为50,索引号分别为0,1,2(1),3(2),4(6)……49,其中,括号内对应插补缓冲区的位置数据取值,如2(1)是指索引号为2的插补缓冲区中的位置数据取值为1。当前的延时周期数为2.5,且当前插补周期为1,则该延时周期数的整数部分2与插补周期之和所对应的索引号为1+2=3,例如索引号为3的插补缓冲区中的位置数据为2,且索引号为4所对应的插补缓冲区的位置数据为6,由于小数部分为0.5,则索引号3和索引号4所对应的位置数据的和为8再乘以0.5就是小数部分所对应的位置数据,即4,因此当前延时周期数为2.5所对应的位置数据为2+4=6,则在下一插补周期(插补周期2)下发的位置数据为6,而不是正常情况下从索引号为2的插补缓冲区中的位置数据(2),实现了对位置数据的提前获取,减少了电机的延迟。
[0034] 在本申请实施例的再一个可选实施方式中,如图2所示,本申请实施例的方法还可以包括:步骤301,设置预设数量的插补缓冲区,并在每一个插补缓冲区中设置对应的位置数据,其中,插补缓冲区中的位置数据为电机的插补数据。
[0035] 在本申请实施例中可以预先设置多个插补缓冲区,且每一个插补缓冲区中设置有对应的位置数据。不同的轴向对应不同的插补缓冲区,例如,X,Y,Z轴分别对应不同的电机,则可以分别设置对应的插补缓冲区,如X轴设置对应的50个插补缓冲区,Y轴设置有对应的50个插补缓冲区,Z轴设置有对应的50个插补缓冲区。上述仅仅是举例说明,在具体应用场景中可以根据需要设置电机所对应的插补缓冲区的数量。
[0036] 可见,在本申请实施例中通过把插补位置数据放在缓冲区,可以控制在插补缓冲区里的第几段插补位置发送给电机驱动器的,以此来控制下发给电机驱动器的位置数据值,达到每个轴电机的实时系统下发位置数据与电机编码器反馈数据曲线的微调,从而达到每个轴电机之间的同步。但是在实际过程中,因为其他一些因素的影响会导致多电机无法同步,即部分电机可能会存在延迟,通过本申请实施例中的方式,通过确定延迟周期数之后,进而根据延迟周期数从当前插补周期所对应的插补缓冲区以及之后的插补缓冲区中确定出位置数据,从而实现了位置数据的提前,减少了电机的延迟。
[0037] 在实际应用场景中通过以下两组数据进行比较:第1组:不使用本申请实施例中的方式,即圆的钳速度2000,转时间常数0.02,加速度300mm/s^2,速度1000mm/min。开粗30min33s;精加工1min29s。
[0038] 第2组:使用本申请实施例集中的方式,即圆的钳速度2000,转角时间常数0.02,加速度300mm/s^2,速度1000mm/min。开粗30min30s;精加工1min37s。
[0039] 如表1所示,圆度参数如下:
[0040] 表1可见,通过本申请实施例中的方式,第2组相比第1组对圆度提升为109%,提升较为明显,即通过本申请实施例的方式,实现对多电机的同步控制,使得加工圆的圆度轮廓误差精度提升了109%。
[0041] 对应于上述图1,本申请实施例还提供了一种电机的控制装置,如图3所示,该装置包括:获取模块402,用于获取当前插补周期所对应的第一位置数据和第二位置数据,其中,第一位置数据为数控系统基于插补周期从插补缓冲区选择并下发给电机驱动器的位置数据,第二位置数据为电机编码器反馈的实时位置数据;插补缓冲区的数量为多个,且每一个插补缓冲区中存储有位置数据;
确定模块404,用于根据第一位置数据、第二位置数据和插补周期确定电机的延时周期数;
处理模块406,用于通过预设的关联关系,基于插补缓冲区中的位置数据确定出与延时周期数所对应的位置数据,并将确定的位置数据控制为下一插补周期电机所对应的位置数据;其中,关联关系用于表征延时周期数,插补周期以及插补缓冲区之间的关联关系。
[0042] 通过本申请实施例的装置,基于当前插补周期从对应的缓冲区获取位置数据下发给电机之后,如果当前电机的实时位置数据与从缓冲区获取的位置数据不相等,则表明当前电机存在延时。在本申请实施例中进一步可以根据从缓冲区获取的位置数据和电机反馈的实时位置数据,以及插补周期可以确定出当前电机的延时周期数。基于此,通过预设的关联关系,基于延时周期数从当前插补周期所对应的插补缓冲区及之后的插补缓冲区中确定位置数据,并将确定的位置数据确定为下一插补周期的位置数据实现了对电机的延时,使得多电机能够在加工工件过程中能够同步,解决了现有技术中由于多电机自身硬件差异和增益参数的差异会使得响应延时周期不同,从而导致多电机不同步进而使得加工工件的轮廓存在较大误差的技术问题。
[0043] 在本申请实施例的可选实施方式中,本申请实施例中的确定模块404进一步可以包括:第一确定单元,用于根据第一位置数据与第二位置数据,确定电机编码器反馈的位置数据与数控系统进行插补后下发给电机驱动器的位置数据相等时所等待的时长,并将时长除以插补周期得到电机的延时周期数;第一处理单元,用于对多个插补周期内的多个延时周期数求平均得到电机的延时周期数,其中,多个插补周期为多个数控程序的执行周期。
[0044] 在本申请实施例的可选实施方式中,本申请实施例中的第一确定单元进一步可以包括:第一确定子单元,用于确定当前插补周期所对应的第一位置数据与第二位置数据的差值的绝对值;获取子单元,用于获取当前插补周期的插补速度与当前插补周期的时长之间的乘积结果;第二确定子单元,用于将绝对值除以乘积结果的结果,确定为电机的延时周期数。
[0045] 在本申请实施例的可选实施方式中,的在延时周期数为整数的情况下,本申请实施例中处理模块406进一步可以包括:第二确定单元,用于根据关联关系,确定整数与当前插补周期数之和的第一结果;第三确定单元,用于确定与第一结果相等的插补缓冲区的索引号;第四确定单元,用于将索引号所对应的插补缓冲区中的位置数据,确定为与延时周期数所关联的插补缓冲区中的位置数据。
[0046] 在本申请实施例的可选实施方式中,在延时周期数为非整数的情况下,本申请实施例中的处理模块406进一步可以包括:第二处理单元,用于根据关联关系确定整数与当前插补周期数之和的第二结果,并确定与第二结果相等的插补缓冲区的索引号,以及获取索引号所对应的插补缓冲区中的第三位置数据;第三处理单元,用于根据关联关系,获取索引号的下一索引号所对应的插补缓冲区中的第四位置数据,并将第三位置数据与第四位置数据的和乘以延时周期数的小数部分的结果确定为第五位置数据,以及将第三位置数据与第五位置数据之和的结果确定为与延时周期数所关联的插补缓冲区中的位置数据。
[0047] 在本申请实施例的可选实施方式中,本申请实施例中的装置还包括:设置模块,用于设置预设数量的插补缓冲区,并在每一个插补缓冲区中设置对应的位置数据,其中,插补缓冲区中的位置数据为电机的插补数据。
[0048] 如图4所示,本申请实施例提供了一种电子设备,包括处理器511、通信接口512、存储器513和通信总线514,其中,处理器511,通信接口512,存储器513通过通信总线514完成相互间的通信,存储器513,用于存放计算机程序
在本申请一个实施例中,处理器511,用于执行存储器513上所存放的程序时,实现前述任意一个方法实施例提供的电机的控制方法,其所起到的作用也是类似的,在此不再赘述。
[0049] 本申请实施例还提供了一种计算机可读存储介质,其上存储有计算机程序,所述计算机程序被处理器执行时实现如前述任意一个方法实施例提供的电机的控制方法的步骤。
[0050] 以上所描述的装置实施例仅仅是示意性的,其中所述作为分离部件说明的单元可以是或者也可以不是物理上分开的,作为单元显示的部件可以是或者也可以不是物理单元,即可以位于一个地方,或者也可以分布到多个网络单元上。可以根据实际的需要选择其中的部分或者全部模块来实现本实施例方案的目的。
[0051] 通过以上的实施方式的描述,本领域的技术人员可以清楚地了解到各实施方式可借助软件加通用硬件平台的方式来实现,当然也可以通过硬件。基于这样的理解,上述技术方案本质上或者说对相关技术做出贡献的部分可以以软件产品的形式体现出来,该计算机软件产品可以存储在计算机可读存储介质中,如ROM/RAM、磁碟、光盘等,包括若干指令用以使得一台计算机设备(可以是个人计算机,服务器,或者网络设备等)执行各个实施例或者实施例的某些部分所述的方法。
[0052] 应理解的是,文中使用的术语仅出于描述特定示例实施方式的目的,而无意于进行限制。除非上下文另外明确地指出,否则如文中使用的单数形式“一”、“一个”以及“所述”也可以表示包括复数形式。术语“包括”、“包含”、“含有”以及“具有”是包含性的,并且因此指明所陈述的特征、步骤、操作、元件和/或部件的存在,但并不排除存在或者添加一个或多个其它特征、步骤、操作、元件、部件、和/或它们的组合。文中描述的方法步骤、过程、以及操作不解释为必须要求它们以所描述或说明的特定顺序执行,除非明确指出执行顺序。还应当理解,可以使用另外或者替代的步骤。
[0053] 以上所述仅是本发明的具体实施方式,使本领域技术人员能够理解或实现本发明。对这些实施例的多种修改对本领域的技术人员来说将是显而易见的,本文中所定义的一般原理可以在不脱离本发明的精神或范围的情况下,在其它实施例中实现。因此,本发明将不会被限制于本文所示的这些实施例,而是要符合与本文所申请的原理和新颖特点相一致的最宽的范围。
QQ群二维码
意见反馈