CN114310882B - 执行器电机端的位置确定方法、装置、设备及存储介质 - Google Patents

执行器电机端的位置确定方法、装置、设备及存储介质 Download PDF

Info

Publication number
CN114310882B
CN114310882B CN202111594588.4A CN202111594588A CN114310882B CN 114310882 B CN114310882 B CN 114310882B CN 202111594588 A CN202111594588 A CN 202111594588A CN 114310882 B CN114310882 B CN 114310882B
Authority
CN
China
Prior art keywords
actuator
position data
motor
encoder
output end
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
CN202111594588.4A
Other languages
English (en)
Other versions
CN114310882A (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.)
Cloudminds Shanghai Robotics Co Ltd
Original Assignee
Cloudminds Shanghai Robotics 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 Cloudminds Shanghai Robotics Co Ltd filed Critical Cloudminds Shanghai Robotics Co Ltd
Priority to CN202111594588.4A priority Critical patent/CN114310882B/zh
Publication of CN114310882A publication Critical patent/CN114310882A/zh
Application granted granted Critical
Publication of CN114310882B publication Critical patent/CN114310882B/zh
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Landscapes

  • Control Of Position Or Direction (AREA)

Abstract

本发明实施例涉及机器人技术领域,公开了一种执行器电机端的位置确定方法、装置、设备及存储介质。所述执行器电机端上设置有电机编码器,由所述执行器电机端带动运动的执行器输出端上设置有输出端编码器,所述方法包括:获取所述输出端编码器记录的第一位置数据和所述电机编码器记录的第二位置数据;根据所述第二位置数据对所述第一位置数据进行校准,得到第三位置数据;根据所述第二位置数据和所述第三位置数据确定所述执行器电机端的多圈位置。使得即使掉电后位置发生变动,仍然能够准确地确定出执行器电机端位置,从而能够确定出执行器输出端的位置,避免位置丢失。

Description

执行器电机端的位置确定方法、装置、设备及存储介质
技术领域
本发明实施例涉及机器人技术领域,特别涉及一种执行器电机端的位置确定方法、装置、设备及存储介质。
背景技术
机器人、机械臂等在执行任务时,通常需要依赖执行器的位置进行控制,以便能够根据初始位置状态进行运动规划、根据运行位置在运行过程确定进行反馈控制、根据运行位置确定任务执行情况等。通常情况下,执行器输出端运动是执行器电机端带动的,即执行器电机端产生的动力经由减速箱输出到执行器输出端,带动执行器输出端运动,因此,为了确定执行器输出端的位置,通常是在执行器电机端上设置位置传感器,得到执行器电机端的位置,以根据执行器电机端位置确定执行器输出端的位置。
然而,位置传感器可能会出现掉电的情况,在掉电情况下,位置传感器无法对执行器电机端的运动进行记录,一旦执行器电机端的位置在掉电时发生变化,重新上电后,就会基于与实际位置之间存在偏差的掉电前的位置进行控制,这个位置偏差会导致控制出差,如任务失败、甚至是带来经济、人身上的伤害。
发明内容
本发明实施例的目的在于提供一种执行器电机端的位置确定方法、装置、设备及存储介质,使得即使掉电后执行器电机端位置发生变动,仍然能够准确地确定出执行器电机端位置,从而能够确定处执行器输出端的位置,避免位置丢失。
为达到上述目的,本发明的实施例提供了一种执行器电机端的位置确定方法,所述执行器电机端上设置有电机编码器,由所述执行器电机端带动运动的执行器输出端上设置有输出端编码器,所述方法包括:获取所述输出端编码器记录的第一位置数据和所述电机编码器记录的第二位置数据;根据所述第二位置数据对所述第一位置数据进行校准,得到第三位置数据;根据所述第二位置数据和所述第三位置数据确定所述执行器电机端的多圈位置。
为达到上述目的,本发明的实施例还提供了一种执行器电机端的位置确定装置,包括:获取模块,用于获取输出端编码器记录的第一位置数据和电机编码器记录的第二位置数据,其中,所述电机编码器设置于执行器电机端上,所述输出端编码器设置于由所述执行器电机端带动运动的执行器输出端上;校准模块,用于根据所述第二位置数据对所述第一位置数据进行校准,得到第三位置数据;计算模块,用于根据所述第二位置数据和所述第三位置数据确定所述执行器电机端的多圈位置。
为达到上述目的,本发明的实施例还提供了一种电子设备,包括:至少一个处理器;以及,与所述至少一个处理器通信连接的存储器;其中,所述存储器存储有可被所述至少一个处理器执行的指令,所述指令被所述至少一个处理器执行,以使所述至少一个处理器能够执行如上所述的执行器电机端的位置确定方法。
为达到上述目的,本发明的实施例还提供了一种计算机可读存储介质,存储有计算机程序,所述计算机程序被处理器执行时实现如上所述的执行器电机端的位置确定方法。
本发明实施例提供的执行器电机端的位置确定方法,设置两个编码器分别测量执行器电机端和执行器输出端的位置,由于执行器输出端是由执行器电机端带动运动的,因此,执行器电机端的位置和执行器输出端的位置之间存在某种关联关系,即执行器电机端上设置的电机编码器记录的位置数据和执行器输出端上设置的输出端编码器记录的位置数据之间也存在该关联关系,从而当输出端编码器记录的位置由于掉电导致不准确的情况下,能够根据获取到的电机编码器记录的第二位置数据校准输出端编码器记录的第一位置数据,得到第三位置数据,从而根据校准得到的第三位置数据可以反算出执行器电机端的多圈位置。并且考虑到执行器输出端通常是通过减速器与执行器电机端连接,因此,执行器输出端的位置能够反映执行器电机端的多圈位置,但是反算出的位置不满一圈时可能会不太准确,因此,在反算时还引入第二位置数据,进一步提高反算出的多圈位置的准确性。
附图说明
一个或多个实施例通过与之对应的附图中的图片进行示例性说明,这些示例性说明并不构成对实施例的限定,附图中具有相同参考数字标号的元件表示为类似的元件,除非有特别申明,附图中的图不构成比例限制。
图1是本发明一实施例中提供的执行器电机端的位置确定方法的流程图;
图2是本发明另一实施例中提供的执行器电机端的位置确定装置的流程图;
图3是本发明另一实施例中提供的电子设备的结构示意图。
具体实施方式
由背景技术可知,执行器中设置的位置传感器会由于掉电导致位置偏差,进而引起控制错误。
为解决上述问题,本发明实施例提供了一种执行器的位置确定方法,所述执行器输出端上设置有输出端编码器,带动所述执行器输出端运动的执行器电机端上设置有电机编码器,所述方法包括:获取所述输出端编码器记录的第一位置数据和所述电机编码器记录的第二位置数据;根据所述第二位置数据对所述第一位置数据进行校准,得到第三位置数据;根据所述第二位置数据和所述第三位置数据确定所述执行器电机端的多圈位置。
本发明实施例提供的执行器电机端的位置确定方法,设置两个编码器分别测量执行器电机端和执行器输出端位置,由于执行器输出端是由执行器电机端带动运动的,因此,执行器电机端的位置和执行器输出端的位置之间存在某种关联关系,即执行器电机端上设置的电机编码器记录的位置数据和执行器输出端上设置的输出端编码器记录的位置数据之间也存在该关联关系,从而当输出端编码器记录的位置由于掉电导致不准确的情况下,能够根据获取到的电机编码器记录的第二位置数据校准输出端编码器记录的第一位置数据,得到第三位置数据,从而根据校准得到的第三位置数据可以反算出执行器电机端的多圈位置。并且考虑到执行器输出端通常是通过减速器与执行器电机端连接,因此,执行器输出端的位置能够反映执行器电机端的多圈位置,但是反算出的位置不满一圈时可能会不太准确,因此,在反算时还引入第二位置数据,进一步提高反算出的多圈位置的准确性。
为使本发明实施例的目的、技术方案和优点更加清楚,下面将结合附图对本发明的各实施例进行详细的阐述。然而,本领域的普通技术人员可以理解,在本发明各实施例中,为了使读者更好地理解本发明而提出了许多技术细节。但是,即使没有这些技术细节和基于以下各实施例的种种变化和修改,也可以实现本发明所要求保护的技术方案。
以下各个实施例的划分是为了描述方便,不应对本发明的具体实现方式构成任何限定,各个实施例在不矛盾的前提下可以相互结合相互引用。
本发明实施例一方面提供了一种执行器的位置确定方法,应用于机器人、机械臂等具有执行器的设备上,且执行器输出端上设置有输出端编码器,执行器电机端设置有电机编码器。需要说明的是,输出端编码器和执行器电机端编码器可以是磁电式编码器,还可以是光电式编码器,如磁性编码器等,输出端编码器和执行器电机端编码器可以相同,也可以不同,本实施例不对输出端编码器和执行器电机端编码器进行限定。执行器的位置确定方法的具体流程如图1所示。
步骤101,获取输出端编码器记录的第一位置数据和电机编码器记录的第二位置数据。
可以理解的是,输出端编码器和电机编码器记录的位置之间存在的关联关系是指同一时刻记录的数据之间的关联关系,而不是任一时刻的输出端编码器记录的位置和任一时刻的电机编码器记录的位置之间的,因此,获取输出端编码器记录的第一位置数据和电机编码器记录的第二位置数据应该是同时获取的。
还可以理解的是,为了避免可能出现的位置偏差问题,应该在开始控制之前执行获取输出端编码器记录的第一位置数据和电机编码器记录的第二位置数据的步骤,以避免出现问题。
在一个例子中,获取输出端编码器记录的第一位置数据和电机编码器记录的第二位置数据,可以通过如下方式实现:在执行器输出端启动后,执行器电机端运动使能前,同时获取第一位置数据和第二位置数据。需要说明的是,在执行器输出端启动后,执行器电机端运动使能前,相当于在启动之后编码器记录的数据发生变化之前。特别地,若是步骤103也在执行器输出端启动后,执行器电机端运动使能前执行,则相当于每次被控制开始运动之前,都得到更加准确的执行器电机端位置,即进行位置校正。
需要说明的是,执行器电机端作为电机驱动速度和位置控制的数据反馈,采样频率要远高于速度环和位置环的调制频率,否则,电机编码器采集的数据可能根本无法准确地反映位置变化。
步骤102,根据第二位置数据对第一位置数据进行校准,得到第三位置数据。
可以理解的是,由于执行器输出端是由执行器电机端带动运动的,因此,执行器电机端的位置和执行器输出端的位置之间存在某种关联关系,即执行器电机端上设置的电机编码器记录的位置数据和执行器输出端上设置的输出端编码器的读数之间也存在该关联关系,该关联关系可以用于指示输出端编码器读数的变化值与电机编码器读数的变化值之间的比例关系。进一步地说,执行器电机端通过一个减速器与执行器输出端连接,也就是,正常情况下,执行器电机端的转动位置和执行器输出端之间的转动位置遵从如下表达式:k+A=B*C,其中,k为正整数,表示圈数,A为执行器电机端的多圈位置,B为执行器输出端的多圈位置,C为减速器的标称的减速比,即执行器电机端和执行器输出端之间的减速比。而在位置出现错误的情况下,k+A'=B'*C+θ,其中,k为正整数,A'为输出端编码器记录的第一位置参数,B'为电机编码器记录的第二位置参数,C为执行器电机端和执行器输出端之间的减速比,θ为输出端编码器和执行器输出端实际转动位置之间的偏差。进而基于上述表达式可以实现数据校准。特别地,当θ=0时,表达式k+A'=B'*C+θ会退化成k+A=B*C,因此,每次执行步骤102进行第一位置数据校准时,可以直接使用A'=B'*C+θ实现,以确定出θ并根据θ完成校准。
可以理解的是,k是根据上述表达式中等号右边的值相应确定出来的,例如,在B=0.725圈,C=20的情况下,此时,B*C=14.5圈,则A应该是0.5圈,这是由编码器自身实际只能记录单圈位置的特性决定的,k=14圈;在B=0.825圈,C=40的情况下,此时,B*C=33圈,则A应该是0圈,k=33。
考虑到不同情况下,减速器标称的减速比通常各不相同,因此,在一个例子中,根据第二位置数据对第一位置数据进行校准,得到第三位置数据之前,执行器的位置确定方法还包括:根据执行器电机端相对于执行器输出端的减速比,确定位于执行器电机端的编码器和位于执行器输出端的编码器记录的位置数据之间的关联关系;即确定出上述表达式k+A'=B'*C+θ中C的取值。此时,根据第二位置数据对第一位置数据进行校准,得到第三位置数据,可以通过如下方式实现:根据关联关系和第二位置数据对第一位置数据进行校准,得到第三位置数据。
需要说明的是,上述说明均是以执行器电机端和执行器输出端之间的减速比为电机标称的减速比为例的,实际上还可以通过实际测量的方式确定,因此,在执行器输出端所在设备,或者,执行器输出端和执行器电机端等装配完成后,使其处于空载状态,先根据电机D轴校准得到电机编码器的零位后,完成电机闭环控制后,以电机减速比为参考,控制执行器电机端带动执行器输出端不断运动,通过不断测量标定出执行器电机端编码器每一圈对应输出端编码器的值。例如,控制执行器电机端不断运动,确定出执行器输出端实现转动一圈时执行器电机端转动的圈数,从而确定出减速比;或者,控制执行器电机端不断运动,确定出执行器输出端实现转动N(N为大于2的正整数)圈时执行器电机端转动的圈数,通过平均的方式,确定出减速比;或者,控制执行器电机端不断转动,确定出执行器输出端实现转动1,……,N(N为大于2的正整数)圈时执行器电机端转动的圈数,通过统计等方式,确定出减速比等。
进一步地,考虑到在执行器电机端带动执行器输出端运动时,可能存在抖动等干扰,以及执行器输出端为了保证中空走线,执行器输出端磁铁在一些执行器输出端中无法对中,还有一些类型的执行器输出端中还会进行偏置,从而导致执行器输出端数据不线性,因此,执行器电机端每运行一圈对应的执行器输出端的运行位置可能会存在差别,进而,根据第二位置数据对第一位置数据进行校准,得到第三位置数据之前,执行器电机端的位置确定方法还包括:多次获取执行器电机端通过机械零度时执行器电机端的运行位置;此时,根据执行器电机端相对于执行器输出端的减速比,确定位于执行器电机端的编码器和位于执行器输出端的编码器记录的位置数据之间的关联关系之后,执行器电机端的位置确定方法还包括:根据获取的若干运行位置更新关联关系;根据关联关系和第二位置数据对第一位置数据进行校准,得到第三位置数据,可以通过如下方式实现:根据更新后的关联关系和第二位置数据对第一位置数据进行校准,得到第三位置数据。
需要说明的是,多次获取执行器电机端通过机械零度时执行器电机端的运行位置可以通过如下方式实现:在执行器电机端编码器运动到任何一圈的电机机械角度的零度后,进行大电流的锁轴动作。这样能够确保电机机械角度零度对应的执行器输出端角度足够稳定后,然后,多次采用滤波取均值。
在另一个例子中,根据关联关系和第二位置数据对第一位置数据进行校准,得到第三位置数据,可以通过如下方式实现:根据关联关系和第二位置数据确定执行器电机端指示的执行器输出端的参考位置,即通过如下表达式确定出参考位置:D=E*C+k,其中,D为参考位置,E为第二位置数据,C为执行器电机端和执行器输出端之间的减速比,k为任一正整数;根据执行器输出端的系统偏差和参考位置校准第一位置数据,得到第三位置数据。
需要说明的是,由于编码器的读数存在数据死区,因此,当输出端编码器的数据落在了第N圈和第N圈的边界位置,需要结合执行器电机端编码器数据进行判断。例如当输出端编码器读值为100时,可能由于系统偏差的存在,如输出端编码器的系统偏差为1的情况下,其真实的读值可能是99或者101,为此需要结合电机编码器记录的位置数据进行判断,电机编码器代表的一圈以内的数据,如果根据电机编码器的读数推算出执行器输出端未满一圈的那部分读数应该为0.9圈,那么执行器输出端的运动圈数应该为9.9圈,如果根据电机编码器的读数推算出执行器输出端未满一圈的那部分读数应该为0.1圈,那么执行器输出端的运动圈数应该为10.1。当然,不会认定执行器输出端的位置数据为10.9或者9.1,虽然小数位对上了,但是数据调整过大。其中,当确定读数是否位于边界位置,其实现方式是:根据实际测试结果,需要设定一个基于当前执行器输出端读值的阈值作为是否需要做边界判断的依据,例如,设定执行器输出端读值处于该圈的a%或者(1-a%)时认定落在了边界位置,此时,需要按照如上所述的方式在确定真实数据时考虑系统偏差和数据死区的影响。特别地,读数未落于边界位置时,显然,不需要与落于边界位置一样,反推数据是否正确,因此,可直接使用读数。
由此不难看出,步骤102实际是通过电机编码器对应的读数(即记录的执行器电机端的多圈位置)对输出端编码器的读数(即记录的执行器输出端的多圈位置)进行校准,以便后续能够根据准确的输出端编码器读数反算出电机端编码的多圈圈数。
需要说明的是,由于数据的非线性,执行器任意相邻两圈的差值不一定,因此,在考虑数据死区的问题时,还可以根据执行器输出端转动一周的过程中,执行器电机端所在圈数的不同,相应地确定出执行器输出端受到落于边界位置的影响下的准确位置,此处就不再一一赘述了。
步骤103,根据第二位置数据和第三位置数据确定执行器电机端的多圈位置。
本实施例中,根据第二位置数据和第三位置数据确定执行器电机端的多圈位置,可以通过如下方式实现:根据第二位置数据、第三位置数据和预设的位置约束关系确定执行器电机端的多圈位置,位置约束关系为如下表达式:
S=[x*α]+β,
其中,S为执行器电机端的多圈位置,x为第三位置数据,α为执行器输出端与执行器电机端之间的减速比,[x*α]为对x*α进行取整的结果,β为第二位置数据。
也就是说,最终得到的执行器电机端的多圈位置是由输出端编码器的读数(即记录的执行器输出端的多圈位置)反算的记录的执行器输出端的多圈位置的整数部分,而执行器输出端的多圈位置的非整数部分通过电机编码器的读数确定的。即通过输出端编码器得到执行器电机端的多圈位置中的整圈数,而执行器电机端得到自身单圈的精确位置,从而结合得到实际位置。
需要说明的是,本实施例中是考虑到,虽然根据校准后的反映执行器输出端位置的第三位置数据能够反推出执行器电机端的多圈位置,但是由于抖动、计算误差、系统误差等因素的影响,对执行器电机端未转满一圈的部分,利用执行器输出端的位置反推实际是不太准确的,因此,对于执行器输出端位置反推出来的执行器电机端的位置数据,只取其整数部分,即只使用执行器输出端所反映的执行器电机端转动的完整圈数,未满一圈的部分使用更加准确的执行器电机端的数据。显然,在其他实施例中实际也可以使用根据执行器输出端反推出来的执行器电机端的多圈位置,而不是用电机编码器记录的第二位置数据也可,只要满足相应的控制精度要求即可,此处就不再一一赘述了。
特别地,输出端编码器满足如下精度条件:10n/(M*X)>3,其中,10n为输出端编码器的精度,M为执行器输出端与执行器电机端之间的减速比,X为根据输出端编码器的误差确定出来的数据死区。
需要说明的是,在控制执行器输出端的控制精度要求不高的情况下,可以通过上述精度条件确定设置于执行器输出端上的编码器。但是若是精度要求较高时,由于实际生产和加工的带来的误差需要更大的余量,因此,可以选择精度更高的编码器,以得到更加准确的执行器电机端位置,从而实现准确控制。
值得一提的是,利用两个分别位于执行器输出端和执行器电机端的编码器互相配合,执行器输出端上采用的编码器精度可以不太高,因为即使输出端编码器的精度不太高,使用电机编码器记录的数据进行校准就能够得到比较准确的数据。进而精度要求不高的情况下,编码器的结构就可以相应不那么复杂,器体积相应也可以缩小,即在执行器输出端上设置的编码器可以是一颗小体积低精度的编码器,此时,仍然能够实现确定出准确的执行器电机端位置从而在上电后能够实现精确的位置控制。
由此不难看出,本实施例提供的执行器电机端的位置确定方法一方面通过输出端编码器的读数(即记录的执行器输出端的多圈位置)得到电机编码器对应的读数(即记录的执行器电机端的多圈位置),以实现对电机编码器读数的校准,另一方面,基于执行器电机端得到自身单圈的精确位置,从而结合上述两方面的结果得到准确真实的执行器电机端位置。
此外,相对于目前常用的两个解决掉电带来的位置偏差的技术方案——在设置位置传感器的基础上,还设置有行程开关,以使得执行器输出端每次上电后都能够自动归零,然后再从零点开始重新进行运动和工作,上电后的位置不受掉电带来位置偏差的影响;以及,在设置位置传感器的基础上,还在驱动板内部增加一个低功耗芯片和纽扣电池,一旦主供电切断,就切换到低功耗芯片通过电池供电,来进行掉电后的位置变动记录。本实施例提供的执行器电机端的位置确定方法,不会出现由于每次上电都要回到固定位置,因此需要整机结构配合做一些定制化的工作,使用场景受限的问题;也不会出现由于低功耗芯片长时间关机电池会过放,导致低功耗芯片停止工作丢位置、维护不便的问题。
上面各种方法的步骤划分,只是为了描述清楚,实现时可以合并为一个步骤或者对某些步骤进行拆分,分解为多个步骤,只要包括相同的逻辑关系,都在本专利的保护范围内;对算法中或者流程中添加无关紧要的修改或者引入无关紧要的设计,但不改变其算法和流程的核心设计都在该专利的保护范围内。
本发明实施例另一方面还提供了一种执行器的位置确定装置,如图2所示,包括:
获取模块201,用于获取输出端编码器记录的第一位置数据和电机编码器记录的第二位置数据,其中,输出端编码器设置于执行器输出端上,电机编码器设置于带动执行器输出端运动的执行器电机端上。
校准模块202,用于根据第二位置数据对第一位置数据进行校准,得到第三位置数据。
计算模块203,用于根据第二位置数据和第三位置数据确定执行器电机端的多圈位置。
不难发现,本实施例为与方法实施例相对应的装置实施例,本实施例可与方法实施例互相配合实施。方法实施例中提到的相关技术细节在本实施例中依然有效,为了减少重复,这里不再赘述。相应地,本实施例中提到的相关技术细节也可应用在方法实施例中。
值得一提的是,本实施例中所涉及到的各模块均为逻辑模块,在实际应用中,一个逻辑单元可以是一个物理单元,也可以是一个物理单元的一部分,还可以以多个物理单元的组合实现。此外,为了突出本发明的创新部分,本实施例中并没有将与解决本发明所提出的技术问题关系不太密切的单元引入,但这并不表明本实施例中不存在其它的单元。
本发明实施例另一方面还提供了一种电子设备,如图3所示,包括:至少一个处理器301;以及,与至少一个处理器301通信连接的存储器302;其中,存储器302存储有可被至少一个处理器301执行的指令,指令被至少一个处理器301执行,以使至少一个处理器301能够执行上述任一方法实施例所描述的执行器的位置确定方法。
其中,存储器302和处理器301采用总线方式连接,总线可以包括任意数量的互联的总线和桥,总线将一个或多个处理器301和存储器302的各种电路连接在一起。总线还可以将诸如外围设备、稳压器和功率管理电路等之类的各种其他电路连接在一起,这些都是本领域所公知的,因此,本文不再对其进行进一步描述。总线接口在总线和收发机之间提供接口。收发机可以是一个元件,也可以是多个元件,比如多个接收器和发送器,提供用于在传输介质上与各种其他装置通信的单元。经处理器301处理的数据通过天线在无线介质上进行传输,进一步,天线还接收数据并将数据传输给处理器301。
处理器301负责管理总线和通常的处理,还可以提供各种功能,包括定时,外围接口,电压调节、电源管理以及其他控制功能。而存储器302可以被用于存储处理器301在执行操作时所使用的数据。
本发明实施方式另一方面还提供了一种计算机可读存储介质,存储有计算机程序。计算机程序被处理器执行时实现上述方法实施例。
即,本领域技术人员可以理解实现上述实施例方法中的全部或部分步骤是可以通过程序来指令相关的硬件来完成,该程序存储在一个存储介质中,包括若干指令用以使得一个设备(可以是单片机,芯片等)或处理器(processor)执行本发明各个实施例所述方法的全部或部分步骤。而前述的存储介质包括:U盘、移动硬盘、只读存储器(ROM,Read-OnlyMemory)、随机存取存储器(RAM,Random Access Memory)、磁碟或者光盘等各种可以存储程序代码的介质。
本领域的普通技术人员可以理解,上述各实施例是实现本发明的具体实施例,而在实际应用中,可以在形式上和细节上对其作各种改变,而不偏离本发明的精神和范围。

Claims (9)

1.一种执行器电机端的位置确定方法,其特征在于,所述执行器电机端上设置有电机编码器,由所述执行器电机端带动运动的执行器输出端上设置有输出端编码器,所述方法包括:
获取所述输出端编码器记录的第一位置数据和所述电机编码器记录的第二位置数据;
根据所述第二位置数据对所述第一位置数据进行校准,得到第三位置数据;
根据所述第二位置数据和所述第三位置数据确定所述执行器电机端的多圈位置;
所述根据所述第二位置数据和所述第三位置数据确定所述执行器电机端的多圈位置,包括:
根据所述第二位置数据、所述第三位置数据和预设的位置约束关系确定所述执行器电机端的多圈位置,所述位置约束关系为如下表达式:
S=[x*α]+β,
其中,S为所述执行器电机端的多圈位置,x为所述第三位置数据,α为所述执行器输出端与所述执行器电机端之间的减速比,[x*α]为对x*α进行取整的结果,β为所述第二位置数据。
2.根据权利要求1所述的执行器电机端的位置确定方法,其特征在于,所述根据所述第二位置数据对所述第一位置数据进行校准,得到第三位置数据之前,所述方法还包括:
根据所述执行器输出端与所述执行器电机端之间的减速比,确定所述输出端编码器和所述电机编码器读数之间的关联关系,所述关联关系用于指示所述输出端编码器读数的变化值与所述电机编码器读数的变化值之间的比例关系;
所述根据所述第二位置数据对所述第一位置数据进行校准,得到第三位置数据,包括:
根据所述关联关系和所述第二位置数据对所述第一位置数据进行校准,得到所述第三位置数据。
3.根据权利要求2所述的执行器电机端的位置确定方法,其特征在于,所述根据所述第二位置数据对所述第一位置数据进行校准,得到第三位置数据之前,所述方法还包括:
多次获取所述执行器电机端通过机械零度时所述执行器电机端的运行位置;
所述根据所述执行器输出端与所述执行器电机端之间的减速比,确定所述输出端编码器和所述电机编码器读数之间的关联关系之后,所述方法还包括:
根据获取的若干所述运行位置更新所述关联关系;
所述根据所述关联关系和所述第二位置数据对所述第一位置数据进行校准,得到所述第三位置数据,包括:
根据更新后的所述关联关系和所述第二位置数据对所述第一位置数据进行校准,得到所述第三位置数据。
4.根据权利要求2所述的执行器电机端的位置确定方法,其特征在于,所述根据所述关联关系和所述第二位置数据对所述第一位置数据进行校准,得到所述第三位置数据,包括:
根据所述关联关系和所述第二位置数据确定所述执行器电机端指示的所述执行器输出端的参考位置;
根据所述执行器输出端的系统偏差和所述参考位置校准所述第一位置数据,得到所述第三位置数据。
5.根据权利要求1至4中任一项所述的执行器电机端的位置确定方法,其特征在于,所述获取所述输出端编码器记录的第一位置数据和所述电机编码器记录的第二位置数据,包括:
在所述执行器输出端启动后,所述执行器电机端运动使能前,同时获取所述第一位置数据和所述第二位置数据。
6.根据权利要求1至4中任一项所述的执行器电机端的位置确定方法,其特征在于,所述输出端编码器满足如下精度条件:
10n/(M*X)>3
其中,10n为所述输出端编码器的精度,M为所述执行器输出端与所述执行器电机端之间的减速比,X为根据所述输出端编码器的误差确定出来的数据死区。
7.一种执行器电机端的位置确定装置,其特征在于,包括:
获取模块,用于获取输出端编码器记录的第一位置数据和电机编码器记录的第二位置数据,其中,所述电机编码器设置于执行器电机端上,所述输出端编码器设置于由所述执行器电机端带动运动的执行器输出端上;
校准模块,用于根据所述第二位置数据对所述第一位置数据进行校准,得到第三位置数据;
计算模块,用于根据所述第二位置数据和所述第三位置数据确定所述执行器电机端的多圈位置;
所述计算模块具体用于根据所述第二位置数据、所述第三位置数据和预设的位置约束关系确定所述执行器电机端的多圈位置,所述位置约束关系为如下表达式:
S=[x*α]+β,
其中,S为所述执行器电机端的多圈位置,x为所述第三位置数据,α为所述执行器输出端与所述执行器电机端之间的减速比,[x*α]为对x*α进行取整的结果,β为所述第二位置数据。
8.一种电子设备,其特征在于,包括:
至少一个处理器;以及,
与所述至少一个处理器通信连接的存储器;其中,
所述存储器存储有可被所述至少一个处理器执行的指令,所述指令被所述至少一个处理器执行,以使所述至少一个处理器能够执行如权利要求1至6中任一项所述的执行器电机端的位置确定方法。
9.一种计算机可读存储介质,存储有计算机程序,其特征在于,所述计算机程序被处理器执行时实现如权利要求1至6中任一项所述的执行器电机端的位置确定方法。
CN202111594588.4A 2021-12-23 2021-12-23 执行器电机端的位置确定方法、装置、设备及存储介质 Active CN114310882B (zh)

Priority Applications (1)

Application Number Priority Date Filing Date Title
CN202111594588.4A CN114310882B (zh) 2021-12-23 2021-12-23 执行器电机端的位置确定方法、装置、设备及存储介质

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CN202111594588.4A CN114310882B (zh) 2021-12-23 2021-12-23 执行器电机端的位置确定方法、装置、设备及存储介质

Publications (2)

Publication Number Publication Date
CN114310882A CN114310882A (zh) 2022-04-12
CN114310882B true CN114310882B (zh) 2023-10-27

Family

ID=81012832

Family Applications (1)

Application Number Title Priority Date Filing Date
CN202111594588.4A Active CN114310882B (zh) 2021-12-23 2021-12-23 执行器电机端的位置确定方法、装置、设备及存储介质

Country Status (1)

Country Link
CN (1) CN114310882B (zh)

Citations (8)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2010238174A (ja) * 2009-03-31 2010-10-21 Yamatake Corp 位置決め装置及び位置決め方法
JP2010249585A (ja) * 2009-04-13 2010-11-04 Yamatake Corp 現在位置特定装置及び現在位置特定方法
CN106363623A (zh) * 2016-09-30 2017-02-01 深圳市同川科技有限公司 机器人位置检测装置及方法
KR20190094918A (ko) * 2018-02-06 2019-08-14 영남대학교 산학협력단 복수에 절대 엔코더 값과 감속비를 이용한 절대 위치 판단 및 위치 판단에 요구되는 엔코더 분해능
CN110986746A (zh) * 2019-12-27 2020-04-10 上海舞肌科技有限公司 输出侧绝对位置检测方法、装置、减速电机和存储介质
CN111174819A (zh) * 2019-12-27 2020-05-19 深圳市越疆科技有限公司 一种电机增量编码器零位校准方法、装置、产品及介质
JP2020104177A (ja) * 2018-12-25 2020-07-09 キヤノン株式会社 ロボット装置、ロボット装置の制御方法、プログラム、記録媒体、物品の製造方法
CN113650021A (zh) * 2021-10-20 2021-11-16 深圳市越疆科技有限公司 机械臂的控制方法、装置、设备、计算机介质及机械臂

Family Cites Families (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP6659096B2 (ja) * 2014-07-09 2020-03-04 キヤノン株式会社 ロボット装置の制御方法、およびロボット装置

Patent Citations (8)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2010238174A (ja) * 2009-03-31 2010-10-21 Yamatake Corp 位置決め装置及び位置決め方法
JP2010249585A (ja) * 2009-04-13 2010-11-04 Yamatake Corp 現在位置特定装置及び現在位置特定方法
CN106363623A (zh) * 2016-09-30 2017-02-01 深圳市同川科技有限公司 机器人位置检测装置及方法
KR20190094918A (ko) * 2018-02-06 2019-08-14 영남대학교 산학협력단 복수에 절대 엔코더 값과 감속비를 이용한 절대 위치 판단 및 위치 판단에 요구되는 엔코더 분해능
JP2020104177A (ja) * 2018-12-25 2020-07-09 キヤノン株式会社 ロボット装置、ロボット装置の制御方法、プログラム、記録媒体、物品の製造方法
CN110986746A (zh) * 2019-12-27 2020-04-10 上海舞肌科技有限公司 输出侧绝对位置检测方法、装置、减速电机和存储介质
CN111174819A (zh) * 2019-12-27 2020-05-19 深圳市越疆科技有限公司 一种电机增量编码器零位校准方法、装置、产品及介质
CN113650021A (zh) * 2021-10-20 2021-11-16 深圳市越疆科技有限公司 机械臂的控制方法、装置、设备、计算机介质及机械臂

Also Published As

Publication number Publication date
CN114310882A (zh) 2022-04-12

Similar Documents

Publication Publication Date Title
CN108731707B (zh) 双增量式编码器测量绝对位置方法和装置
JP3143310B2 (ja) 位置検出装置、補正機能付位置検出装置、位置検出方法、および、位置検出装置の補正方法
CN101480347B (zh) 一种四维超声探头电机控制系统
CN103472730B (zh) 一种基于谐波减速器扭转刚度迟滞模型的双框架控制力矩陀螺高精度框架速率伺服系统
CN112824059B (zh) 一种编码器数据转换方法、装置及设备
WO1982001601A1 (en) Position error correcting device
KR20120127061A (ko) 공작기계의 백래시 자동 검출과 보상을 위한 방법 및 장치
US9647606B2 (en) Counter based circuit for measuring movement of an object
KR20190094918A (ko) 복수에 절대 엔코더 값과 감속비를 이용한 절대 위치 판단 및 위치 판단에 요구되는 엔코더 분해능
KR101841821B1 (ko) 2개의 절대형 엔코더를 이용한 절대위치 계측장치 및 계측방법
CN201355804Y (zh) 一种四维超声探头电机控制系统
CN114310882B (zh) 执行器电机端的位置确定方法、装置、设备及存储介质
CN2911606Y (zh) 隧道限界检测快速测量装置
CN111800040B (zh) 步进电机及其复位方法、装置及计算机可读存储介质
CN111380499B (zh) 转动角度的检测方法及装置
US20180188073A1 (en) Servo gear idle position measuring device and method
CN108436904B (zh) 一种无需编码器的机械手关节绝对角测量方法
EP1796263A1 (en) Time constant automatic estimation method, time constant automatic estimation apparatus and servo motor control system
CN111113152B (zh) 检测补偿装置、检测补偿方法及计算机可读存储介质
CN109015646B (zh) 位置信息自标定方法、装置、设备和存储介质
JP2008041011A (ja) 工作機械における位置補正方法
JP5308144B2 (ja) サーボモータ装置の較正方法およびサーボモータ装置
Ye et al. Decoding of BISS-C Protocol Based on FPGA
CN103178832A (zh) 一种利用增量型编码器的圈数记录方法
JP2004139299A (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
CB02 Change of applicant information

Address after: 200245 Building 8, No. 207, Zhongqing Road, Minhang District, Shanghai

Applicant after: Dayu robot Co.,Ltd.

Address before: 200245 Building 8, No. 207, Zhongqing Road, Minhang District, Shanghai

Applicant before: Dalu Robot Co.,Ltd.

CB02 Change of applicant information
GR01 Patent grant
GR01 Patent grant