一种编码器数据转换方法、装置及设备

文档序号:573838 发布日期:2021-05-21 浏览:3次 >En<

阅读说明:本技术 一种编码器数据转换方法、装置及设备 (Data conversion method, device and equipment for encoder ) 是由 孙毅 高志华 王广炎 于 2019-11-15 设计创作,主要内容包括:本发明公开了一种编码器数据转换方法、装置及设备,用于将增量编码器的脉冲数转换为电机转轴的单圈值和圈数,能够保证在伺服驱动器断电后仍可以记录电机转轴的位置,保证机器人在伺服驱动器断电后仍可正常工作。该方法包括:获取至少一个电机上的增量编码器累计的脉冲数;根据所述至少一个电机上的增量编码器的精度,将所述至少一个电机上的增量编码器的脉冲数转换为电机转轴的单圈值和圈数;将所述电机转轴的单圈值和圈数发送给伺服驱动器,以使伺服驱动器根据所述单圈值和圈数确定电机转轴的绝对位置。(The invention discloses a method, a device and equipment for converting encoder data, which are used for converting the pulse number of an incremental encoder into a single-turn value and a turn number of a motor rotating shaft, can ensure that the position of the motor rotating shaft can be recorded after a servo driver is powered off, and ensure that a robot can still normally work after the servo driver is powered off. The method comprises the following steps: acquiring the accumulated pulse number of an incremental encoder on at least one motor; converting the pulse number of the incremental encoder on the at least one motor into a single-turn value and a turn number of a motor rotating shaft according to the precision of the incremental encoder on the at least one motor; and sending the single-circle value and the number of turns of the motor rotating shaft to a servo driver so that the servo driver determines the absolute position of the motor rotating shaft according to the single-circle value and the number of turns.)

一种编码器数据转换方法、装置及设备

技术领域

本发明涉及工业机器人技术领域,尤其涉及一种编码器数据转换方法、装置及设备。

背景技术

伺服驱动器是目前智能控制技术领域中的重要组成部分,尤其广泛应用于工业机器人及数控加工中心等自动化设备中,主要应用于高精度的定位系统,一般是通过位置、速度和力矩三种方式对伺服电机进行控制,伺服电机通过连接编码器实现位置的测量,编码器安装在电机上,采集电机转轴的转动信息,发送给控制电机的伺服驱动器。

目前很多的老旧工业机器人的伺服电机使用增量编码器,增量编码器一般可采用脉冲计数来表示电机转动的圈数,伺服驱动器接收增量编码器的脉冲,并对接收的脉冲数进行累计从而确定电机转动的位置,但实际情况中,经常发生伺服驱动器断电的情况,在伺服驱动器断电后,工业机器人可能由于惯性仍在运动,或者由于人工搬运导致工业机器人的运动发生变化,但此时增量编码器无法发送脉冲给伺服驱动器,导致伺服驱动器再次上电后无法判断电机的位置,机器人不能工作,需要先移动到参考位置,比较费时。

发明内容

本发明提供一种编码器数据转换方法、装置及设备,用于将增量编码器的脉冲数转换为电机转轴的单圈值和圈数,能够保证在伺服驱动器断电后仍可以记录电机转轴的位置,保证机器人在伺服驱动器断电后仍可正常工作。

第一方面,本发明提供一种编码器数据转换方法,该方法包括:

获取至少一个电机上的增量编码器累计的脉冲数;

根据所述至少一个电机上的增量编码器的精度,将所述至少一个电机上的增量编码器的脉冲数转换为电机转轴的单圈值和圈数;

将所述电机转轴的单圈值和圈数发送给伺服驱动器,以使伺服驱动器根据所述单圈值和圈数确定电机转轴的绝对位置。

作为一种可选的实施方式,根据所述至少一个电机上的增量编码器的精度,将所述至少一个电机上的增量编码器的脉冲数转换为电机转轴的单圈值和圈数,包括:

根据所述至少一个电机上的增量编码器的精度,确定所述电机转动一圈,所述电机上的增量编码器累计的脉冲数;

根据预先定义的电机转轴的单圈参考位置及所述脉冲数,确定电机转轴的单圈值和圈数。

作为一种可选的实施方式,获取至少一个电机上的增量编码器累计的脉冲数,包括:

周期获取至少一个电机上的增量编码器的脉冲数;

周期获取至少一个电机上的增量编码器的脉冲数之后,还包括:

确定本周期内的脉冲数与上一周期内的脉冲数的差值;

若所述本周期内的脉冲数大于第一预设阈值,和/或,所述差值大于第二预设阈值,则向伺服驱动器发送对应的报警状态。

作为一种可选的实施方式,若所述本周期内的脉冲数大于第一预设阈值,和/或,所述差值大于第二预设阈值,则向伺服驱动器发送对应的报警状态,包括:

根据所述脉冲数大于第一预设阈值,确定电机的速度异常,和/或,根据所述差值大于第二预设阈值,确定电机的加速度异常;

向伺服驱动器发送所述电机的报警状态及校验数据,以使伺服驱动器对所述校验数据校验通过后,根据所述电机的报警状态控制电机减速或停止,其中所述电机的报警状态包括速度异常和/或加速度异常。

作为一种可选的实施方式,将所述至少一个电机上的增量编码器的脉冲数转换为电机转轴的单圈值和圈数之后,还包括:

将所述单圈值和圈数存储于非伺服驱动器供电的内存中。

第二方面,本发明提供一种编码器数据转换方法,该方法包括:

伺服驱动器接收至少一个电机对应的单圈值和圈数,其中所述单圈值和圈数是根据所述至少一个电机上的增量编码器的精度,将所述至少一个电机上的增量编码器累计的脉冲数进行转换得到的;

所述伺服驱动器根据所述单圈值和圈数确定电机转轴的绝对位置。

作为一种可选的实施方式,该方法还包括:

所述伺服驱动器接收电机的报警状态及校验数据,所述电机的报警状态包括速度异常和/或加速度异常;

所述伺服驱动器对所述校验数据校验通过后,根据所述电机的报警状态控制电机减速或停止。

第三方面,本发明提供一种编码器数据转换系统,该系统包括:编码器转换模块、至少一个伺服驱动器,至少一个增量编码器,所述编码器转换模块包括至少一个与伺服驱动器连接的第一接口,至少一个与增量编码器连接的第二接口,其中:

所述编码器转换模块,用于获取至少一个电机上的增量编码器累计的脉冲数;根据所述至少一个电机上的增量编码器的精度,将所述至少一个电机上的增量编码器的脉冲数转换为电机转轴的单圈值和圈数;将所述内存中的单圈值和圈数发送给伺服驱动器,以使伺服驱动器根据所述单圈值和圈数确定电机转轴的绝对位置;

所述伺服驱动器,用于接收至少一个电机对应的单圈值和圈数,其中所述单圈值和圈数是根据所述至少一个电机上的增量编码器的精度,将所述至少一个电机上的增量编码器累计的脉冲数进行转换得到的;根据所述单圈值和圈数确定电机转轴的绝对位置。

第四方面,本发明提供一种编码器数据转换装置,该装置包括:获取脉冲数模块、转换模块、发送模块,其中:

获取脉冲数模块,用于获取至少一个电机上的增量编码器累计的脉冲数;

转换模块,用于根据所述至少一个电机上的增量编码器的精度,将所述至少一个电机上的增量编码器的脉冲数转换为电机转轴的单圈值和圈数;

发送模块,用于将所述电机转轴的单圈值和圈数发送给伺服驱动器,以使伺服驱动器根据所述单圈值和圈数确定电机转轴的绝对位置。

作为一种可选的实施方式,所述转换模块具体用于:

根据所述至少一个电机上的增量编码器的精度,确定所述电机转动一圈,所述电机上的增量编码器累计的脉冲数;

根据预先定义的电机转轴的单圈参考位置及所述脉冲数,确定电机转轴的单圈值和圈数。

作为一种可选的实施方式,所述获取脉冲数模块具体用于:

周期获取至少一个电机上的增量编码器的脉冲数;

所述装置还包括报警模块用于:

确定本周期内的脉冲数与上一周期内的脉冲数的差值;

若所述本周期内的脉冲数大于第一预设阈值,和/或,所述差值大于第二预设阈值,则向伺服驱动器发送对应的报警状态。

作为一种可选的实施方式,所述报警模块具体用于:

根据所述脉冲数大于第一预设阈值,确定电机的速度异常,和/或,根据所述差值大于第二预设阈值,确定电机的加速度异常;

向伺服驱动器发送所述电机的报警状态及校验数据,以使伺服驱动器对所述校验数据校验通过后,根据所述电机的报警状态控制电机减速或停止,其中所述电机的报警状态包括速度异常和/或加速度异常。

作为一种可选的实施方式,所述装置还包括存储模块用于:

将所述单圈值和圈数存储于非伺服驱动器供电的内存中。

第五方面,本发明提供一种编码器数据转换的伺服驱动器装置,该装置包括:接收模块、确定位置模块,其中:

接收模块,用于接收至少一个电机对应的单圈值和圈数,其中所述单圈值和圈数是根据所述至少一个电机上的增量编码器的精度,将所述至少一个电机上的增量编码器累计的脉冲数进行转换得到的;

确定位置模块,用于根据所述单圈值和圈数确定电机转轴的绝对位置。

作为一种可选的实施方式,所述装置还包括控制模块用于:

接收电机的报警状态及校验数据,所述电机的报警状态包括速度异常和/或加速度异常;

对所述校验数据校验通过后,根据所述电机的报警状态控制电机减速或停止。

第六方面,本发明提供一种编码器数据转换设备,该设备包括:处理器以及存储器,其中,所述存储器存储有程序代码,当所述程序代码被所述处理器执行时,使得所述处理器执行如下步骤:

获取至少一个电机上的增量编码器累计的脉冲数;

根据所述至少一个电机上的增量编码器的精度,将所述至少一个电机上的增量编码器的脉冲数转换为电机转轴的单圈值和圈数;

将所述电机转轴的单圈值和圈数发送给伺服驱动器,以使伺服驱动器根据所述单圈值和圈数确定电机转轴的绝对位置。

作为一种可选的实施方式,所述处理器具体用于:

根据所述至少一个电机上的增量编码器的精度,确定所述电机转动一圈,所述电机上的增量编码器累计的脉冲数;

根据预先定义的电机转轴的单圈参考位置及所述脉冲数,确定电机转轴的单圈值和圈数。

作为一种可选的实施方式,所述处理器具体用于:

周期获取至少一个电机上的增量编码器的脉冲数;

周期获取至少一个电机上的增量编码器的脉冲数之后,还包括:

确定本周期内的脉冲数与上一周期内的脉冲数的差值;

若所述本周期内的脉冲数大于第一预设阈值,和/或,所述差值大于第二预设阈值,则向伺服驱动器发送对应的报警状态。

作为一种可选的实施方式,所述处理器具体用于:

根据所述脉冲数大于第一预设阈值,确定电机的速度异常,和/或,根据所述差值大于第二预设阈值,确定电机的加速度异常;

向伺服驱动器发送所述电机的报警状态及校验数据,以使伺服驱动器对所述校验数据校验通过后,根据所述电机的报警状态控制电机减速或停止,其中所述电机的报警状态包括速度异常和/或加速度异常。

作为一种可选的实施方式,所述处理器具体还用于:

将所述单圈值和圈数存储于非伺服驱动器供电的内存中。

第七方面,本发明提供一种编码器数据转换的伺服驱动器设备,该设备包括:处理器以及存储器,其中,所述存储器存储有程序代码,当所述程序代码被所述处理器执行时,使得所述处理器执行如下步骤:

接收至少一个电机对应的单圈值和圈数,其中所述单圈值和圈数是根据所述至少一个电机上的增量编码器的精度,将所述至少一个电机上的增量编码器累计的脉冲数进行转换得到的;

根据所述单圈值和圈数确定电机转轴的绝对位置。

作为一种可选的实施方式,所述处理器具体还用于:

接收电机的报警状态及校验数据,所述电机的报警状态包括速度异常和/或加速度异常;

对所述校验数据校验通过后,根据所述电机的报警状态控制电机减速或停止。

第八方面,本发明提供一种计算机存储介质,其上存储有计算机程序,该程序被处理器执行时实现上述第一方面所述方法的步骤。

第九方面,本发明提供一种计算机存储介质,其上存储有计算机程序,该程序被处理器执行时实现上述第二方面所述方法的步骤。

本发明提供的一种编码器数据转换方法、装置及设备,具有以下有益效果:

用于将增量编码器的脉冲数转换为电机转轴的单圈值和圈数,能够保证在伺服驱动器断电后仍可以记录电机转轴的位置,保证机器人在伺服驱动器断电后仍可正常工作。

附图说明

为了更清楚地说明本发明实施例中的技术方案,下面将对实施例描述中所需要使用的附图作简要介绍,显而易见地,下面描述中的附图仅仅是本发明的一些实施例,对于本领域的普通技术人员来讲,在不付出创造性劳动的前提下,还可以根据这些附图获得其他的附图。

图1为本发明实施例提供的一种增量编码器的脉冲信号图;

图2为本发明实施例提供的另一种增量编码器的脉冲信号图;

图3为本发明实施例提供的一种编码器数据转换方法流程图;

图4为本发明实施例提供的一种检测电机异常并发送报警状态的方法流程图;

图5为本发明实施例提供的另一种编码器数据转换方法流程图;

图6为本发明实施例提供的一种编码器数据转换系统示意图;

图7为本发明实施例提供的一种编码器转换模块的硬件结构示意图;

图8为本发明实施例提供的一种编码器转换模块的硬件连接示意图;

图9为本发明实施例提供的一种编码器数据转换装置示意图;

图10为本发明实施例提供的一种编码器数据转换的伺服驱动器装置示意图;

图11为本发明实施例提供的一种编码器数据转换设备示意图;

图12为本发明实施例提供的一种编码器数据转换的伺服驱动器设备示意图。

具体实施方式

为了使本发明的目的、技术方案和优点更加清楚,下面将结合附图对本发明作进一步地详细描述,显然,所描述的实施例仅仅是本发明一部分实施例,而不是全部的实施例。基于本发明中的实施例,本领域普通技术人员在没有做出创造性劳动前提下所获得的所有其它实施例,都属于本发明保护的范围。

本发明实施例中术语“和/或”,描述关联对象的关联关系,表示可以存在三种关系,例如,A和/或B,可以表示:单独存在A,同时存在A和B,单独存在B这三种情况。字符“/”一般表示前后关联对象是一种“或”的关系。

本发明实施例描述的应用场景是为了更加清楚的说明本发明实施例的技术方案,并不构成对于本发明实施例提供的技术方案的限定,本领域普通技术人员可知,随着新应用场景的出现,本发明实施例提供的技术方案对于类似的技术问题,同样适用。其中,在本发明的描述中,除非另有说明,“多个”的含义是两个或两个以上。

下面首先对增量编码器的工作原理进行简单介绍:

增量编码器采集电机位置的增量信息,即电机角度变化值,一般通过脉冲表示,转动角度越大,脉冲个数越多,每个增量编码器都有一个精度,根据该精度能够确定多少个脉冲个数表示电机转动一圈。

增量编码器通过两个信号线确定脉冲,包括A相脉冲和B相脉冲,通过A相脉冲和B相脉冲的先后顺序确定转动方向,如图1所示,A相脉冲在前,B相脉冲在后,表示电机顺时针转动(CW方向),如图2所示,B相脉冲在前,A相脉冲在后,表示电机逆时针转动(CCW方向)。

由于目前很多的老旧工业机器人的伺服电机使用增量编码器,而实际情况中,无法保证伺服驱动器长时间保持供电状态,若发生伺服驱动器断电的情况,在伺服驱动器断电后,工业机器人可能由于惯性仍在运动,或者由于人工搬运导致工业机器人的运动发生变化,但此时增量编码器无法发送脉冲给伺服驱动器,导致伺服驱动器再次上电后无法判断电机的位置,机器人不能工作,需要先移动到原点(即参考位置),比较费时;另外,若需要更新工业机器人的电机,则伺服驱动器必然需要断电,不仅难以找到安装机械接口匹配的电机,即使找到匹配的电机更换完成后,在伺服驱动器上电后,需要将工业机器人移动至参考点,费时费力,若将工业机器人本体淘汰更新,则需要较高成本,造成浪费。也就是说,目前使用增量编码器的工业机器人在每次伺服驱动器断电的情况下,都需要重新移动到参考位置。

而本发明实施例提供的方法,在不更换工业机器人电机,不更换工业机器人的情况下,提供一种将增量编码器的数据进行数据转换的方法,使得伺服驱动器在断电并再次上电后,不需要移动工业机器人至参考位置,只需要根据转换后的增量编码器的数据来确定电机转轴的绝对位置,即节省成本又不费时费力。

如图3所示,本发明实施例提供一种编码器数据转换方法,该方法的具体实施流程如下:

步骤300、获取至少一个电机上的增量编码器累计的脉冲数;

需要说明的是,本发明实施例中的电机包括一个或多个,每个电机转动后,电机上的增量编码器都会产生脉冲信号,实施中,所述电机为多个,则将每个电机上的增量编码器产生的脉冲信号进行累加,得到每个电机上的增量编码器累计的脉冲数。

可选的,本发明实施例可以实时获取至少一个电机上的增量编码器累计的脉冲数,也可以周期获取至少一个电机上的增量编码器累计的脉冲数,本发明对获取电机上的增量编码器的脉冲数的时机不作过多限定。

步骤301、根据所述至少一个电机上的增量编码器的精度,将所述至少一个电机上的增量编码器的脉冲数转换为电机转轴的单圈值和圈数;

需要说明的是,若本实施中的电机为多个,则电机上的增量编码器也为多个,并且,每个电机上的增量编码器的精度可以不同,也可以相同,本实施例对此不作过多限定。

可以理解的是,本实施例中电机上的增量编码器的脉冲数转换的电机转轴的单圈值和圈数,相当于绝对编码器的单圈值和圈数,即本实施例中将增量编码器累计的脉冲数转换为电机转轴的单圈值和圈数,相当于将增量编码器的数据转换为绝对编码器的数据,从而实现了在不更新电机,不更换编码器且不更新机器人的情况下,实现了将增量编码器转换为绝对编码器的效果。

若所述电机为一个,则根据该电机上的增量编码器的精度,将该电机上的增量编码器的脉冲数转换为该电机转轴的单圈值和圈数;

若所述电机为多个,则根据每个电机上的增量编码器的精度,将每个电机上的增量编码器的脉冲数转换为该电机转轴的单圈值和圈数,其中,每个电机上的增量编码器的精度不同,则每个电机上增量编码器的脉冲数可能不同,因此,由增量编码器的脉冲数转换的每个电机转轴的单圈值和圈数也可能不同。例如16位的增量编码器,电机转动一圈会有65536个信号。

实施中,电机、增量编码器、增量编码器的精度、电机上的增量编码器的脉冲数以及电机转轴的单圈值和圈数,可以是一一对应的关系。

作为一种可选的实施方式,根据所述至少一个电机上的增量编码器的精度,将所述至少一个电机上的增量编码器的脉冲数转换为电机转轴的单圈值和圈数,包括:

根据所述至少一个电机上的增量编码器的精度,确定所述电机转动一圈,所述电机上的增量编码器累计的脉冲数;

根据预先定义的电机转轴的单圈参考位置及所述脉冲数,确定电机转轴的单圈值和圈数。

实施中,所述单圈可以是所述电机转轴的一圈,所述预先定义的电机转轴的单圈参考位置可以根据需求定义,为方便计算,可以将电机转轴的单圈参考位置标记为零,该参考位置选定后,电机转轴的单圈上的各个位置都有了对应的值。

实施中,将所述至少一个电机上的增量编码器的脉冲数记为A,将所述电机转动一圈确定的电机上的增量编码器累计的脉冲数记为B,将A除以B得到的整数部分作为所述电机转轴的圈数,将A除以B得到的小数部分根据预先定义的单圈参考位置换算后,得到单圈值。

可选的,本实施例中电机转轴的单圈参考位置可以是预先设定的,也根据需求对预先设定的单圈参考位置进行更新,例如当机器人的电机更换后,需要重新标定电机转轴的单圈参考位置,即需要更新电机转轴的单圈参考位置,本实施例对何时更改电机转轴的单圈参考位置不作过多限定。

步骤302、将所述电机转轴的单圈值和圈数发送给伺服驱动器,以使伺服驱动器根据所述单圈值和圈数确定电机转轴的绝对位置。

作为一种可选的实施方式,将所述至少一个电机上的增量编码器的脉冲数转换为电机转轴的单圈值和圈数之后,还包括:

将所述单圈值和圈数存储于非伺服驱动器供电的内存中。

从而能够将所述内存中存储的所述电机转轴的单圈值和圈数发送给伺服驱动器,以使伺服驱动器根据所述单圈值和圈数确定电机转轴的绝对位置。

需要说明的是,本实施例中可以通过电池为所述内存供电;实施中,在伺服驱动器供电的情况下,可以根据伺服驱动器提供的电源为所述内存供电,也可以根据伺服驱动器提供的电源为所述电池供电,在伺服驱动器断电的情况下,可使用该电池为所述内存供电;

另外,在伺服驱动器断电的情况下,可以使用电池为除和伺服通讯的接口外的元器件供电,例如可以使用电池为电机、增量编码器等元器件供电,从而保证在伺服驱动器断电的情况下,电机仍能够运转,仍能够采集电机上的增量编码器的脉冲数,并将累计的脉冲数转换为电机转轴的单圈值和圈数,从而实现增量编码器的数据转换。

可选的,若电机为多个,在伺服驱动器断电的情况下,可以使用电池为一个电机及该电机的增量编码器供电,也可以使用电池为多个电机及多个电机对应的多个增量编码器供电,其中,可以根据实际需求,如电池的电量情况或电机的运转情况确定使用电池供电的电机及增量编码器的个数,本实施例对电池供电的电机及增量编码器的个数不作过多限定。

将所述至少一个电机上的增量编码器累计的脉冲数转换为电机转轴的单圈值和圈数后,存储到所述内存中,以使伺服驱动器断电并上电后,根据所述单圈值和圈数确定电机转轴的绝对位置。

这样能够保证即使伺服驱动器断电的情况下,仍不会影响记录所述电机上的增量编码器累计的脉冲数,并且不会影响将该累计的脉冲数转换为单圈值和圈数后,存储到所述内存中,作为有效数据,在伺服驱动器断电并上电后,仍能够确定准确的电机转轴的绝对位置。

可选的,将所述电机转轴的单圈值和圈数发送给伺服驱动器,包括:

按照串口通讯协议,将所述单圈值和圈数转换为串行数据,并发送给伺服驱动器。

可选的,本实施例中可以通过电池为所述内存供电,若所述电池电量异常时,可以向伺服驱动器发送报警信号,若电池电量不足,则可以向伺服驱动器发送报警信号以使伺服驱动器为所述电池充电,或更换电池。

本实施例中,可以将上述方法应用于测试环境中,也可以应用于实际环境中,若应用于测试环境中时,将在正常工作状态下的电机上的增量编码器累计的脉冲数转换为电机转轴的单圈值和圈数,并将该单圈值和圈数存储于内存中,确定正常工作状态下电机转轴的数据,以用于根据该正常工作状态下电机转轴的数据对机器人在实际的工作环境中对获取的单圈值和圈数进行检验,作为一种可能的实施方式,可以周期获取至少一个电机上的增量编码器的脉冲数,统计各周期内的脉冲数,确定在每个周期内电机正常工作情况下的增量编码器的脉冲数,根据所述工作情况下的增量编码器的脉冲数确定第一预设阈值,并且统计相邻周期的脉冲数的差值,确定电机正常工作情况下的相邻周期的增量编码器的脉冲数的差值,根据所述正常工作情况下的相邻周期的增量编码器的脉冲数的差值确定第二预设阈值。

可选的,本实施例中可以周期获取至少一个电机上的增量编码器的脉冲数;周期获取至少一个电机上的增量编码器的脉冲数之后,还包括:

确定本周期内的脉冲数与上一周期内的脉冲数的差值;

若所述本周期内的脉冲数大于第一预设阈值,和/或,所述差值大于第二预设阈值,则向伺服驱动器发送对应的报警状态。

作为一种可选的实施方式,若所述本周期内的脉冲数大于第一预设阈值,和/或,所述差值大于第二预设阈值,则向伺服驱动器发送对应的报警状态,包括:

根据所述脉冲数大于第一预设阈值,确定电机的速度异常,和/或,根据所述差值大于第二预设阈值,确定电机的加速度异常;

向伺服驱动器发送所述电机的报警状态及校验数据,以使伺服驱动器对所述校验数据校验通过后,根据所述电机的报警状态控制电机减速或停止,其中所述电机的报警状态包括速度异常和/或加速度异常。

如图4所示,本实施例可以提供一种检测电机异常并发送报警状态的方法,以一个电机为例进行说明,该方法的具体流程如下:

步骤400、周期获取电机上的增量编码器的脉冲数;

步骤401、确定本周期内的脉冲数;

步骤402、确定本周期内的脉冲数与上一周期内的脉冲数的差值;

步骤403、判断所述本周期内的脉冲数是否大于第一预设阈值,若是执行步骤404,否则执行步骤405;

步骤404、向伺服驱动器发送速度异常报警;

步骤405、判断所述本周期内的脉冲数与上一周期内的脉冲数的差值是否大于第二预设阈值,若是执行步骤406,否则返回步骤401;

步骤406、向伺服驱动器发送加速度异常报警。

实施中,所述向伺服驱动器发送所述电机的校验数据时预先设定的校验数据,伺服驱动器可以首先对接收到的校验数据进行校验,若校验未通过,则说明收到的数据可能有误,则可以丢弃接收到的数据,若校验通过,则可以根据收到的速度异常报警控制电机减速或停止,或,根据接收到的加速度异常报警控制电机减速或停止,或根据收到的速度异常报警和加速度异常报警控制电机减速或停止。

可选的,伺服驱动器对所述校验数据校验通过后,可以根据所述电机的报警状态切断动力电以使电机急停,也可以上报给伺服驱动器的上位设备。

本实施例中上述伺服驱动器根据所述电机的报警状态执行的处理仅为实例,本实施例对伺服驱动器根据所述电机的报警状态执行的处理方式不作过多限定,可根据实际情况需求执行相应的处理。

如图5所示,基于相同的发明构思,本实施例还提供一种编码器数据转换方法,可应用于伺服驱动器,由于该方法解决问题的原理与上述方法相似,因此该方法的具体实施过程可以参见上述方法的实施,重复之处不再赘述,该方法的具体流程如下:

步骤500、伺服驱动器接收至少一个电机对应的单圈值和圈数,其中所述单圈值和圈数是根据所述至少一个电机上的增量编码器的精度,将所述至少一个电机上的增量编码器累计的脉冲数进行转换得到的;

步骤501、所述伺服驱动器根据所述单圈值和圈数确定电机转轴的绝对位置。

可选的,伺服驱动器可以按照串口通讯协议,接收至少一个电机对应的单圈值和圈数。

作为一种可选的实施方式,该方法还包括:

所述伺服驱动器接收电机的报警状态及校验数据,所述电机的报警状态包括速度异常和/或加速度异常;

所述伺服驱动器对所述校验数据校验通过后,根据所述电机的报警状态控制电机减速或停止。

实施中,伺服驱动器可以首先对接收到的校验数据进行校验,若校验未通过,则说明收到的数据可能有误,则可以丢弃接收到的数据,若校验通过,则可以根据收到的速度异常报警控制电机减速或停止,或,根据接收到的加速度异常报警控制电机减速或停止,或根据收到的速度异常报警和加速度异常报警控制电机减速或停止。

可选的,伺服驱动器对所述校验数据校验通过后,可以根据所述电机的报警状态切断动力电以使电机急停,也可以上报给伺服驱动器的上位设备。

本实施例中上述伺服驱动器根据所述电机的报警状态执行的处理仅为实例,本实施例对伺服驱动器根据所述电机的报警状态执行的处理方式不作过多限定,可根据实际情况需求执行相应的处理。

基于相同的发明构思,本发明实施例还提供了一种编码器数据转换系统,由于该系统即是本发明实施例中的方法中的系统,并且该系统解决问题的原理与该方法相似,因此该系统的实施可以参见方法的实施,重复之处不再赘述。

如图6所示,该系统包括:编码器转换模块600、至少一个伺服驱动器601,至少一个增量编码器602,所述编码器转换模块包括至少一个与伺服驱动器连接的第一接口,至少一个与增量编码器连接的第二接口,其中:

所述编码器转换模块,用于获取至少一个电机上的增量编码器累计的脉冲数;根据所述至少一个电机上的增量编码器的精度,将所述至少一个电机上的增量编码器的脉冲数转换为电机转轴的单圈值和圈数;将所述电机转轴的单圈值和圈数发送给伺服驱动器,以使伺服驱动器根据所述单圈值和圈数确定电机转轴的绝对位置;

所述伺服驱动器,用于接收至少一个电机对应的单圈值和圈数,其中所述单圈值和圈数是根据所述至少一个电机上的增量编码器的精度,将所述至少一个电机上的增量编码器累计的脉冲数进行转换得到的;根据所述单圈值和圈数确定电机转轴的绝对位置。

可选的,所述至少一个与伺服驱动器连接的第一接口为串口接口。

所述第一接口与第二接口可以是不同的接口,也可以是相同的接口,本实施例不作过多限定。

可选的,所述增量编码器的个数和所述伺服驱动器的个数相同,且增量编码器和伺服驱动器是一一对应的;

需要说明的是,若所述增量编码器为多个时,则所述伺服驱动器也为多个,所述编码器转换模块与多个增量编码器连接的接口为多个,所述编码器转换模块与多个伺服驱动器连接的接口为多个。

作为一种可选的实施方式,如图7所示,所述编码器转换模块的硬件结构包括主模块700和至少一个扩展模块701;

其中,主模块包括现场可编程门阵列(Field Programmable Gate Array,FPGA)、电源模块、配置模块等,其中所述配置模块包括与扩展模块数量相同的拨码开关按钮、线束接插件,所述线束接插件可以同时连接多个扩展模块,如所述线束接插件可以同时连接8个扩展模块;所述主模块为必备模块,数量为一个;

扩展模块包括与增量编码器连接的第二接口、与伺服驱动器连接的第一接口、线束接插件等,扩展模块是选用的,数量为一个或多个,可以根据具体使用情况选择一个扩展模块或多个扩展模块,本实施例对此不作过多限定。例如如果有6个增量编码器,则可以选用6个扩展模块;

若所述增量编码器为多个,可选用多个扩展模块,则多个扩展模块之间通过级联的方式连接;

如图8所示,所述主模块800和所述至少一个扩展模块801之间的线束至少包括电源线+、电源线-、A相脉冲、B相脉冲、串行数据发、串行数据收等。

作为一种可选的实施方式,所述编码器转换模块具体用于:

根据所述至少一个电机上的增量编码器的精度,确定所述电机转动一圈,所述电机上的增量编码器累计的脉冲数;

根据预先定义的电机转轴的单圈参考位置及所述脉冲数,确定电机转轴的单圈值和圈数。

作为一种可选的实施方式,所述编码器转换模块具体用于:

周期获取至少一个电机上的增量编码器的脉冲数;

周期获取至少一个电机上的增量编码器的脉冲数之后,还包括:

确定本周期内的脉冲数与上一周期内的脉冲数的差值;

若所述本周期内的脉冲数大于第一预设阈值,和/或,所述差值大于第二预设阈值,则向伺服驱动器发送对应的报警状态。

作为一种可选的实施方式,所述编码器转换模块具体用于:

根据所述脉冲数大于第一预设阈值,确定电机的速度异常,和/或,根据所述差值大于第二预设阈值,确定电机的加速度异常;

向伺服驱动器发送所述电机的报警状态及校验数据,以使伺服驱动器对所述校验数据校验通过后,根据所述电机的报警状态控制电机减速或停止,其中所述电机的报警状态包括速度异常和/或加速度异常。

作为一种可选的实施方式,所述系统还包括电池模块,用于:

为存储所述单圈值和圈数的内存供电。

基于相同的发明构思,本发明实施例还提供了一种编码器数据转换装置,由于该装置即是本发明实施例中的方法中的装置,并且该装置解决问题的原理与该方法相似,因此该装置的实施可以参见方法的实施,重复之处不再赘述。

如图9所示,该装置包括:获取脉冲数模块900、转换模块901、发送模块902,其中:

获取脉冲数模块900,用于获取至少一个电机上的增量编码器累计的脉冲数;

转换模块901,用于根据所述至少一个电机上的增量编码器的精度,将所述至少一个电机上的增量编码器的脉冲数转换为电机转轴的单圈值和圈数;

发送模块902,用于将所述电机转轴的单圈值和圈数发送给伺服驱动器,以使伺服驱动器根据所述单圈值和圈数确定电机转轴的绝对位置。

作为一种可选的实施方式,所述转换模块901具体用于:

根据所述至少一个电机上的增量编码器的精度,确定所述电机转动一圈,所述电机上的增量编码器累计的脉冲数;

根据预先定义的电机转轴的单圈参考位置及所述脉冲数,确定电机转轴的单圈值和圈数。

作为一种可选的实施方式,所述获取脉冲数模块900具体用于:

周期获取至少一个电机上的增量编码器的脉冲数;

所述装置还包括报警模块用于:

确定本周期内的脉冲数与上一周期内的脉冲数的差值;

若所述本周期内的脉冲数大于第一预设阈值,和/或,所述差值大于第二预设阈值,则向伺服驱动器发送对应的报警状态。

作为一种可选的实施方式,所述报警模块具体用于:

根据所述脉冲数大于第一预设阈值,确定电机的速度异常,和/或,根据所述差值大于第二预设阈值,确定电机的加速度异常;

向伺服驱动器发送所述电机的报警状态及校验数据,以使伺服驱动器对所述校验数据校验通过后,根据所述电机的报警状态控制电机减速或停止,其中所述电机的报警状态包括速度异常和/或加速度异常。

作为一种可选的实施方式,所述装置还包括存储模块用于:

将所述单圈值和圈数存储于非伺服驱动器供电的内存中。

基于相同的发明构思,本发明实施例还提供了一种编码器数据转换的伺服驱动器装置,由于该装置即是本发明实施例中的方法中的装置,并且该装置解决问题的原理与该方法相似,因此该装置的实施可以参见方法的实施,重复之处不再赘述。

如图10所示,该装置包括:接收模块1000、确定位置模块1001,其中:

接收模块1000,用于接收至少一个电机对应的单圈值和圈数,其中所述单圈值和圈数是根据所述至少一个电机上的增量编码器的精度,将所述至少一个电机上的增量编码器累计的脉冲数进行转换得到的;

确定位置模块1001,用于根据所述单圈值和圈数确定电机转轴的绝对位置。

作为一种可选的实施方式,所述装置还包括控制模块用于:

接收电机的报警状态及校验数据,所述电机的报警状态包括速度异常和/或加速度异常;

对所述校验数据校验通过后,根据所述电机的报警状态控制电机减速或停止。

基于相同的发明构思,本发明实施例还提供了一种编码器数据转换设备,由于该设备即是本发明实施例中的方法中的设备,并且该设备解决问题的原理与该方法相似,因此该设备的实施可以参见方法的实施,重复之处不再赘述。

如图11所示,该设备包括:处理器1100以及存储器1101,其中,所述存储器1101存储有程序代码,当所述程序代码被所述处理器1100执行时,使得所述处理器1100执行如下步骤:

获取至少一个电机上的增量编码器累计的脉冲数;

根据所述至少一个电机上的增量编码器的精度,将所述至少一个电机上的增量编码器的脉冲数转换为电机转轴的单圈值和圈数;

将所述电机转轴的单圈值和圈数发送给伺服驱动器,以使伺服驱动器根据所述单圈值和圈数确定电机转轴的绝对位置。

作为一种可选的实施方式,所述处理器1100具体用于:

根据所述至少一个电机上的增量编码器的精度,确定所述电机转动一圈,所述电机上的增量编码器累计的脉冲数;

根据预先定义的电机转轴的单圈参考位置及所述脉冲数,确定电机转轴的单圈值和圈数。

作为一种可选的实施方式,所述处理器1100具体用于:

周期获取至少一个电机上的增量编码器的脉冲数;

周期获取至少一个电机上的增量编码器的脉冲数之后,还包括:

确定本周期内的脉冲数与上一周期内的脉冲数的差值;

若所述本周期内的脉冲数大于第一预设阈值,和/或,所述差值大于第二预设阈值,则向伺服驱动器发送对应的报警状态。

作为一种可选的实施方式,所述处理器1100具体用于:

根据所述脉冲数大于第一预设阈值,确定电机的速度异常,和/或,根据所述差值大于第二预设阈值,确定电机的加速度异常;

向伺服驱动器发送所述电机的报警状态及校验数据,以使伺服驱动器对所述校验数据校验通过后,根据所述电机的报警状态控制电机减速或停止,其中所述电机的报警状态包括速度异常和/或加速度异常。

作为一种可选的实施方式,所述处理器1100具体还用于:

将所述单圈值和圈数存储于非伺服驱动器供电的内存中。

基于相同的发明构思,本发明实施例还提供了一种编码器数据转换的伺服驱动器设备,由于该设备即是本发明实施例中的方法中的设备,并且该设备解决问题的原理与该方法相似,因此该设备的实施可以参见方法的实施,重复之处不再赘述。

如图12所示,该设备包括:处理器1200以及存储器1201,其中,所述存储器1201存储有程序代码,当所述程序代码被所述处理器1200执行时,使得所述处理器1200执行如下步骤:

接收至少一个电机对应的单圈值和圈数,其中所述单圈值和圈数是根据所述至少一个电机上的增量编码器的精度,将所述至少一个电机上的增量编码器累计的脉冲数进行转换得到的;

根据所述单圈值和圈数确定电机转轴的绝对位置。

作为一种可选的实施方式,所述处理器1200具体还用于:

接收电机的报警状态及校验数据,所述电机的报警状态包括速度异常和/或加速度异常;

对所述校验数据校验通过后,根据所述电机的报警状态控制电机减速或停止。

基于相同的发明构思,本发明实施例还提供了一种计算机存储介质,其上存储有计算机程序,该程序被处理器执行时实现如下步骤:

获取至少一个电机上的增量编码器累计的脉冲数;

根据所述至少一个电机上的增量编码器的精度,将所述至少一个电机上的增量编码器的脉冲数转换为电机转轴的单圈值和圈数;

将所述电机转轴的单圈值和圈数发送给伺服驱动器,以使伺服驱动器根据所述单圈值和圈数确定电机转轴的绝对位置。

基于相同的发明构思,本发明实施例还提供了另一种计算机存储介质,其上存储有计算机程序,该程序被处理器执行时实现如下步骤:

接收至少一个电机对应的单圈值和圈数,其中所述单圈值和圈数是根据所述至少一个电机上的增量编码器的精度,将所述至少一个电机上的增量编码器累计的脉冲数进行转换得到的;

根据所述单圈值和圈数确定电机转轴的绝对位置。

本领域内的技术人员应明白,本发明的实施例可提供为方法、系统、或计算机程序产品。因此,本发明可采用完全硬件实施例、完全软件实施例、或结合软件和硬件方面的实施例的形式。而且,本发明可采用在一个或多个其中包含有计算机可用程序代码的计算机可用存储介质(包括但不限于磁盘存储器和光学存储器等)上实施的计算机程序产品的形式。

本发明是参照根据本发明实施例的方法、设备(系统)、和计算机程序产品的流程图和/或方框图来描述的。应理解可由计算机程序指令实现流程图和/或方框图中的每一流程和/或方框、以及流程图和/或方框图中的流程和/或方框的结合。可提供这些计算机程序指令到通用计算机、专用计算机、嵌入式处理机或其他可编程数据处理设备的处理器以产生一个机器,使得通过计算机或其他可编程数据处理设备的处理器执行的指令产生用于实现在流程图一个流程或多个流程和/或方框图一个方框或多个方框中指定的功能的设备。

这些计算机程序指令也可存储在能引导计算机或其他可编程数据处理设备以特定方式工作的计算机可读存储器中,使得存储在该计算机可读存储器中的指令产生包括指令设备的制造品,该指令设备实现在流程图一个流程或多个流程和/或方框图一个方框或多个方框中指定的功能。

这些计算机程序指令也可装载到计算机或其他可编程数据处理设备上,使得在计算机或其他可编程设备上执行一系列操作步骤以产生计算机实现的处理,从而在计算机或其他可编程设备上执行的指令提供用于实现在流程图一个流程或多个流程和/或方框图一个方框或多个方框中指定的功能的步骤。

显然,本领域的技术人员可以对本发明进行各种改动和变型而不脱离本发明的精神和范围。这样,倘若本发明的这些修改和变型属于本发明权利要求及其等同技术的范围之内,则本发明也意图包含这些改动和变型在内。

23页详细技术资料下载
上一篇:一种医用注射器针头装配设备
下一篇:加工路径生成装置及其方法

网友询问留言

已有0条留言

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

精彩留言,会给你点赞!